
/* WARNING: Type propagation algorithm not settling */
/* DWARF original prototype: void ~Sized_dwarf_line_info(Sized_dwarf_line_info<64,_true> * this, int
   __in_chrg) */

void __thiscall
gold::Sized_dwarf_line_info<64,_true>::~Sized_dwarf_line_info
          (Sized_dwarf_line_info<64,_true> *this,int __in_chrg)

{
  pointer pvVar1;
  pointer ppVar2;
  pointer pcVar3;
  pointer pvVar4;
  pointer pbVar5;
  pointer puVar6;
  pointer pvVar7;
  pointer pvVar8;
  pointer ppVar9;
  pointer pbVar10;
  
  (this->super_Dwarf_line_info)._vptr_Dwarf_line_info =
       (_func_int_varargs **)&PTR__Sized_dwarf_line_info_00426be0;
  if (this->buffer_start_ != (uchar *)0x0) {
    operator_delete__(this->buffer_start_);
  }
  std::
  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>
  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>
                 *)&this->line_number_map_,__in_chrg);
  std::
  _Rb_tree<long_int,_std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>,_std::_Select1st<std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>_>,_std::less<long_int>,_std::allocator<std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>_>_>
  ::_M_erase(&(this->reloc_map_)._M_t,
             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent);
  pvVar1 = (this->files_).
           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>
           ._M_impl._M_finish;
  pvVar7 = (this->files_).
           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>
           ._M_impl._M_start;
  if (pvVar1 != pvVar7) {
    do {
      ppVar2 = (pvVar7->
               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>
               )._M_impl._M_finish;
      ppVar9 = (pvVar7->
               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>
               )._M_impl._M_start;
      if (ppVar2 != ppVar9) {
        do {
          pcVar3 = (ppVar9->second)._M_dataplus._M_p;
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)pcVar3 != &(ppVar9->second).field_2) {
            operator_delete(pcVar3);
          }
          ppVar9 = ppVar9 + 1;
        } while (ppVar2 != ppVar9);
        ppVar9 = (pvVar7->
                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>
                 )._M_impl._M_start;
      }
      if (ppVar9 != (pointer)0x0) {
        operator_delete(ppVar9);
      }
      pvVar7 = pvVar7 + 1;
    } while (pvVar1 != pvVar7);
    pvVar7 = (this->files_).
             super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>
             ._M_impl._M_start;
  }
  if (pvVar7 != (pointer)0x0) {
    operator_delete(pvVar7);
  }
  pvVar4 = (this->directories_).
           super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>
           ._M_impl._M_finish;
  pvVar8 = (this->directories_).
           super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>
           ._M_impl._M_start;
  if (pvVar4 != pvVar8) {
    do {
      pbVar5 = (pvVar8->
               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>
               )._M_impl._M_finish;
      pbVar10 = (pvVar8->
                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>
                )._M_impl._M_start;
      if (pbVar5 != pbVar10) {
        do {
          pcVar3 = (pbVar10->_M_dataplus)._M_p;
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)pcVar3 != &pbVar10->field_2) {
            operator_delete(pcVar3);
          }
          pbVar10 = pbVar10 + 1;
        } while (pbVar5 != pbVar10);
        pbVar10 = (pvVar8->
                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>
                  )._M_impl._M_start;
      }
      if (pbVar10 != (pointer)0x0) {
        operator_delete(pbVar10);
      }
      pvVar8 = pvVar8 + 1;
    } while (pvVar4 != pvVar8);
    pvVar8 = (this->directories_).
             super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>
             ._M_impl._M_start;
  }
  if (pvVar8 != (pointer)0x0) {
    operator_delete(pvVar8);
  }
  puVar6 = (this->header_).std_opcode_lengths.
           super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start;
  if (puVar6 != (pointer)0x0) {
    operator_delete(puVar6);
  }
  operator_delete(this,0x138);
  return;
}



void FUN_0016fe30(undefined8 *param_1)

{
  long *plVar1;
  long lVar2;
  long *plVar3;
  long *plVar4;
  long lVar5;
  long *plVar6;
  
  *param_1 = &PTR_FUN_00426be0;
  if (param_1[0xe] != 0) {
    thunk_FUN_002dac70();
  }
  FUN_0016f1f0(param_1 + 0x20);
  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);
  plVar1 = (long *)param_1[0x17];
  plVar4 = (long *)param_1[0x16];
  if (plVar1 != plVar4) {
    do {
      lVar2 = plVar4[1];
      lVar5 = *plVar4;
      if (lVar2 != lVar5) {
        do {
          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {
            FUN_002dac70();
          }
          lVar5 = lVar5 + 0x28;
        } while (lVar2 != lVar5);
        lVar5 = *plVar4;
      }
      if (lVar5 != 0) {
        FUN_002dac70(lVar5);
      }
      plVar4 = plVar4 + 3;
    } while (plVar1 != plVar4);
    plVar4 = (long *)param_1[0x16];
  }
  if (plVar4 != (long *)0x0) {
    FUN_002dac70(plVar4);
  }
  plVar1 = (long *)param_1[0x14];
  plVar4 = (long *)param_1[0x13];
  if (plVar1 != plVar4) {
    do {
      plVar3 = (long *)plVar4[1];
      plVar6 = (long *)*plVar4;
      if (plVar3 != plVar6) {
        do {
          if ((long *)*plVar6 != plVar6 + 2) {
            FUN_002dac70();
          }
          plVar6 = plVar6 + 4;
        } while (plVar3 != plVar6);
        plVar6 = (long *)*plVar4;
      }
      if (plVar6 != (long *)0x0) {
        FUN_002dac70(plVar6);
      }
      plVar4 = plVar4 + 3;
    } while (plVar1 != plVar4);
    plVar4 = (long *)param_1[0x13];
  }
  if (plVar4 != (long *)0x0) {
    FUN_002dac70(plVar4);
  }
  if (param_1[8] != 0) {
    FUN_002dac70();
  }
  thunk_FUN_002dac70(param_1,0x138);
  return;
}


LEA RAX,[0x426be0]
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
MOV RBX,RDI
MOV qword ptr [RDI],RAX
MOV RDI,qword ptr [RDI + 0x70]
TEST RDI,RDI
JZ 0x0016fe53
CALL 0x002dac40
LEA RDI,[RBX + 0x100]
CALL 0x0016f1f0
MOV RSI,qword ptr [RBX + 0xe0]
LEA RDI,[RBX + 0xd0]
CALL 0x0016f8b0
MOV R13,qword ptr [RBX + 0xb8]
MOV RBP,qword ptr [RBX + 0xb0]
CMP R13,RBP
JZ 0x0016fed6
NOP dword ptr [RAX]
MOV R14,qword ptr [RBP + 0x8]
MOV R12,qword ptr [RBP]
CMP R14,R12
JZ 0x0016feb9
NOP dword ptr [RAX]
MOV RDI,qword ptr [R12 + 0x8]
LEA RAX,[R12 + 0x18]
CMP RDI,RAX
JZ 0x0016feac
CALL 0x002dac70
ADD R12,0x28
CMP R14,R12
JNZ 0x0016fe98
MOV R12,qword ptr [RBP]
TEST R12,R12
JZ 0x0016fec6
MOV RDI,R12
CALL 0x002dac70
ADD RBP,0x18
CMP R13,RBP
JNZ 0x0016fe88
MOV RBP,qword ptr [RBX + 0xb0]
TEST RBP,RBP
JZ 0x0016fee3
MOV RDI,RBP
CALL 0x002dac70
MOV R13,qword ptr [RBX + 0xa0]
MOV RBP,qword ptr [RBX + 0x98]
CMP R13,RBP
JZ 0x0016ff4d
NOP word ptr CS:[RAX + RAX*0x1]
MOV R14,qword ptr [RBP + 0x8]
MOV R12,qword ptr [RBP]
CMP R14,R12
JZ 0x0016ff30
NOP dword ptr [RAX]
MOV RDI,qword ptr [R12]
LEA RAX,[R12 + 0x10]
CMP RDI,RAX
JZ 0x0016ff23
CALL 0x002dac70
ADD R12,0x20
CMP R14,R12
JNZ 0x0016ff10
MOV R12,qword ptr [RBP]
TEST R12,R12
JZ 0x0016ff3d
MOV RDI,R12
CALL 0x002dac70
ADD RBP,0x18
CMP R13,RBP
JNZ 0x0016ff00
MOV RBP,qword ptr [RBX + 0x98]
TEST RBP,RBP
JZ 0x0016ff5a
MOV RDI,RBP
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x40]
TEST RDI,RDI
JZ 0x0016ff68
CALL 0x002dac70
MOV RDI,RBX
MOV ESI,0x138
POP RBX
POP RBP
POP R12
POP R13
POP R14
JMP 0x002dac60
(translation_unit "void FUN_0016fe30(undefined8 *param_1)\n\n{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}\n\n" (function_definition "void FUN_0016fe30(undefined8 *param_1)\n\n{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}" primitive_type (function_declarator "FUN_0016fe30(undefined8 *param_1)" identifier (parameter_list "(undefined8 *param_1)" ( (parameter_declaration "undefined8 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}" { (declaration "long *plVar1;" (sized_type_specifier "long" long) (pointer_declarator "*plVar1" * identifier) ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar3;" (sized_type_specifier "long" long) (pointer_declarator "*plVar3" * identifier) ;) (declaration "long *plVar4;" (sized_type_specifier "long" long) (pointer_declarator "*plVar4" * identifier) ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar6;" (sized_type_specifier "long" long) (pointer_declarator "*plVar6" * identifier) ;) (expression_statement "*param_1 = &PTR_FUN_00426be0;" (assignment_expression "*param_1 = &PTR_FUN_00426be0" (pointer_expression "*param_1" * identifier) = (pointer_expression "&PTR_FUN_00426be0" & identifier)) ;) (if_statement "if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }" if (parenthesized_expression "(param_1[0xe] != 0)" ( (binary_expression "param_1[0xe] != 0" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    thunk_FUN_002dac70();\n  }" { (expression_statement "thunk_FUN_002dac70();" (call_expression "thunk_FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_0016f1f0(param_1 + 0x20);" (call_expression "FUN_0016f1f0(param_1 + 0x20)" identifier (argument_list "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))) ;) (expression_statement "FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);" (call_expression "FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c])" identifier (argument_list "(param_1 + 0x1a,param_1[0x1c])" ( (binary_expression "param_1 + 0x1a" identifier + number_literal) , (subscript_expression "param_1[0x1c]" identifier [ number_literal ]) ))) ;) (expression_statement "plVar1 = (long *)param_1[0x17];" (assignment_expression "plVar1 = (long *)param_1[0x17]" identifier = (cast_expression "(long *)param_1[0x17]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x17]" identifier [ number_literal ]))) ;) (expression_statement "plVar4 = (long *)param_1[0x16];" (assignment_expression "plVar4 = (long *)param_1[0x16]" identifier = (cast_expression "(long *)param_1[0x16]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x16]" identifier [ number_literal ]))) ;) (if_statement "if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }" if (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) (compound_statement "{\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }" { (do_statement "do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);" do (compound_statement "{\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    }" { (expression_statement "lVar2 = plVar4[1];" (assignment_expression "lVar2 = plVar4[1]" identifier = (subscript_expression "plVar4[1]" identifier [ number_literal ])) ;) (expression_statement "lVar5 = *plVar4;" (assignment_expression "lVar5 = *plVar4" identifier = (pointer_expression "*plVar4" * identifier)) ;) (if_statement "if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }" if (parenthesized_expression "(lVar2 != lVar5)" ( (binary_expression "lVar2 != lVar5" identifier != identifier) )) (compound_statement "{\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }" { (do_statement "do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);" do (compound_statement "{\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        }" { (if_statement "if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }" if (parenthesized_expression "(*(long *)(lVar5 + 8) != lVar5 + 0x18)" ( (binary_expression "*(long *)(lVar5 + 8) != lVar5 + 0x18" (pointer_expression "*(long *)(lVar5 + 8)" * (cast_expression "(long *)(lVar5 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar5 + 8)" ( (binary_expression "lVar5 + 8" identifier + number_literal) )))) != (binary_expression "lVar5 + 0x18" identifier + number_literal)) )) (compound_statement "{\n            FUN_002dac70();\n          }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "lVar5 = lVar5 + 0x28;" (assignment_expression "lVar5 = lVar5 + 0x28" identifier = (binary_expression "lVar5 + 0x28" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar2 != lVar5)" ( (binary_expression "lVar2 != lVar5" identifier != identifier) )) ;) (expression_statement "lVar5 = *plVar4;" (assignment_expression "lVar5 = *plVar4" identifier = (pointer_expression "*plVar4" * identifier)) ;) })) (if_statement "if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }" if (parenthesized_expression "(lVar5 != 0)" ( (binary_expression "lVar5 != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_002dac70(lVar5);\n      }" { (expression_statement "FUN_002dac70(lVar5);" (call_expression "FUN_002dac70(lVar5)" identifier (argument_list "(lVar5)" ( identifier ))) ;) })) (expression_statement "plVar4 = plVar4 + 3;" (assignment_expression "plVar4 = plVar4 + 3" identifier = (binary_expression "plVar4 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) ;) (expression_statement "plVar4 = (long *)param_1[0x16];" (assignment_expression "plVar4 = (long *)param_1[0x16]" identifier = (cast_expression "(long *)param_1[0x16]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x16]" identifier [ number_literal ]))) ;) })) (if_statement "if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }" if (parenthesized_expression "(plVar4 != (long *)0x0)" ( (binary_expression "plVar4 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_002dac70(plVar4);\n  }" { (expression_statement "FUN_002dac70(plVar4);" (call_expression "FUN_002dac70(plVar4)" identifier (argument_list "(plVar4)" ( identifier ))) ;) })) (expression_statement "plVar1 = (long *)param_1[0x14];" (assignment_expression "plVar1 = (long *)param_1[0x14]" identifier = (cast_expression "(long *)param_1[0x14]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x14]" identifier [ number_literal ]))) ;) (expression_statement "plVar4 = (long *)param_1[0x13];" (assignment_expression "plVar4 = (long *)param_1[0x13]" identifier = (cast_expression "(long *)param_1[0x13]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x13]" identifier [ number_literal ]))) ;) (if_statement "if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }" if (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) (compound_statement "{\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }" { (do_statement "do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);" do (compound_statement "{\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    }" { (expression_statement "plVar3 = (long *)plVar4[1];" (assignment_expression "plVar3 = (long *)plVar4[1]" identifier = (cast_expression "(long *)plVar4[1]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar4[1]" identifier [ number_literal ]))) ;) (expression_statement "plVar6 = (long *)*plVar4;" (assignment_expression "plVar6 = (long *)*plVar4" identifier = (cast_expression "(long *)*plVar4" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar4" * identifier))) ;) (if_statement "if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }" if (parenthesized_expression "(plVar3 != plVar6)" ( (binary_expression "plVar3 != plVar6" identifier != identifier) )) (compound_statement "{\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }" { (do_statement "do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);" do (compound_statement "{\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        }" { (if_statement "if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }" if (parenthesized_expression "((long *)*plVar6 != plVar6 + 2)" ( (binary_expression "(long *)*plVar6 != plVar6 + 2" (cast_expression "(long *)*plVar6" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar6" * identifier)) != (binary_expression "plVar6 + 2" identifier + number_literal)) )) (compound_statement "{\n            FUN_002dac70();\n          }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "plVar6 = plVar6 + 4;" (assignment_expression "plVar6 = plVar6 + 4" identifier = (binary_expression "plVar6 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar3 != plVar6)" ( (binary_expression "plVar3 != plVar6" identifier != identifier) )) ;) (expression_statement "plVar6 = (long *)*plVar4;" (assignment_expression "plVar6 = (long *)*plVar4" identifier = (cast_expression "(long *)*plVar4" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar4" * identifier))) ;) })) (if_statement "if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }" if (parenthesized_expression "(plVar6 != (long *)0x0)" ( (binary_expression "plVar6 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        FUN_002dac70(plVar6);\n      }" { (expression_statement "FUN_002dac70(plVar6);" (call_expression "FUN_002dac70(plVar6)" identifier (argument_list "(plVar6)" ( identifier ))) ;) })) (expression_statement "plVar4 = plVar4 + 3;" (assignment_expression "plVar4 = plVar4 + 3" identifier = (binary_expression "plVar4 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) ;) (expression_statement "plVar4 = (long *)param_1[0x13];" (assignment_expression "plVar4 = (long *)param_1[0x13]" identifier = (cast_expression "(long *)param_1[0x13]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x13]" identifier [ number_literal ]))) ;) })) (if_statement "if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }" if (parenthesized_expression "(plVar4 != (long *)0x0)" ( (binary_expression "plVar4 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_002dac70(plVar4);\n  }" { (expression_statement "FUN_002dac70(plVar4);" (call_expression "FUN_002dac70(plVar4)" identifier (argument_list "(plVar4)" ( identifier ))) ;) })) (if_statement "if (param_1[8] != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(param_1[8] != 0)" ( (binary_expression "param_1[8] != 0" (subscript_expression "param_1[8]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "thunk_FUN_002dac70(param_1,0x138);" (call_expression "thunk_FUN_002dac70(param_1,0x138)" identifier (argument_list "(param_1,0x138)" ( identifier , number_literal ))) ;) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n/* DWARF original prototype: void ~Sized_dwarf_line_info(Sized_dwarf_line_info<64,_true> * this, int\n   __in_chrg) */\n\nvoid __thiscall\ngold::Sized_dwarf_line_info<64,_true>::~Sized_dwarf_line_info\n          (Sized_dwarf_line_info<64,_true> *this,int __in_chrg)\n\n{\n  pointer pvVar1;\n  pointer ppVar2;\n  pointer pcVar3;\n  pointer pvVar4;\n  pointer pbVar5;\n  pointer puVar6;\n  pointer pvVar7;\n  pointer pvVar8;\n  pointer ppVar9;\n  pointer pbVar10;\n  \n  (this->super_Dwarf_line_info)._vptr_Dwarf_line_info =\n       (_func_int_varargs **)&PTR__Sized_dwarf_line_info_00426be0;\n  if (this->buffer_start_ != (uchar *)0x0) {\n    operator_delete__(this->buffer_start_);\n  }\n  std::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg);\n  std::\n  _Rb_tree<long_int,_std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>,_std::_Select1st<std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>_>,_std::less<long_int>,_std::allocator<std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>_>_>\n  ::_M_erase(&(this->reloc_map_)._M_t,\n             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent);\n  pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl._M_finish;\n  pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl._M_start;\n  if (pvVar1 != pvVar7) {\n    do {\n      ppVar2 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish;\n      ppVar9 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start;\n      if (ppVar2 != ppVar9) {\n        do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);\n        ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;\n      }\n      if (ppVar9 != (pointer)0x0) {\n        operator_delete(ppVar9);\n      }\n      pvVar7 = pvVar7 + 1;\n    } while (pvVar1 != pvVar7);\n    pvVar7 = (this->files_).\n             super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n             ._M_impl._M_start;\n  }\n  if (pvVar7 != (pointer)0x0) {\n    operator_delete(pvVar7);\n  }\n  pvVar4 = (this->directories_).\n           super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>\n           ._M_impl._M_finish;\n  pvVar8 = (this->directories_).\n           super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>\n           ._M_impl._M_start;\n  if (pvVar4 != pvVar8) {\n    do {\n      pbVar5 = (pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish;\n      pbVar10 = (pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start;\n      if (pbVar5 != pbVar10) {\n        do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);\n        pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;\n      }\n      if (pbVar10 != (pointer)0x0) {\n        operator_delete(pbVar10);\n      }\n      pvVar8 = pvVar8 + 1;\n    } while (pvVar4 != pvVar8);\n    pvVar8 = (this->directories_).\n             super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>\n             ._M_impl._M_start;\n  }\n  if (pvVar8 != (pointer)0x0) {\n    operator_delete(pvVar8);\n  }\n  puVar6 = (this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start;\n  if (puVar6 != (pointer)0x0) {\n    operator_delete(puVar6);\n  }\n  operator_delete(this,0x138);\n  return;\n}\n\n" comment comment (declaration "void __thiscall\ngold::Sized_dwarf_line_info<64,_true>::~Sized_dwarf_line_info\n          (Sized_dwarf_line_info<64,_true> *this,int __in_chrg)\n\n{\n  pointer pvVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::" identifier : :) identifier (ERROR "<64" < number_literal) , (ERROR "_true>::~Sized_dwarf_line_info\n          (Sized_dwarf_line_info<64,_true> *this,int __in_chrg)\n\n{\n  pointer" identifier > : : ~ (function_declarator "Sized_dwarf_line_info\n          (Sized_dwarf_line_info<64,_true> *this,int __in_chrg)" identifier (parameter_list "(Sized_dwarf_line_info<64,_true> *this,int __in_chrg)" ( (parameter_declaration "Sized_dwarf_line_info" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_true> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "int __in_chrg" primitive_type identifier) ))) { identifier) identifier ;) (declaration "pointer ppVar2;" type_identifier identifier ;) (declaration "pointer pcVar3;" type_identifier identifier ;) (declaration "pointer pvVar4;" type_identifier identifier ;) (declaration "pointer pbVar5;" type_identifier identifier ;) (declaration "pointer puVar6;" type_identifier identifier ;) (declaration "pointer pvVar7;" type_identifier identifier ;) (declaration "pointer pvVar8;" type_identifier identifier ;) (declaration "pointer ppVar9;" type_identifier identifier ;) (declaration "pointer pbVar10;" type_identifier identifier ;) (expression_statement "(this->super_Dwarf_line_info)._vptr_Dwarf_line_info =\n       (_func_int_varargs **)&PTR__Sized_dwarf_line_info_00426be0;" (assignment_expression "(this->super_Dwarf_line_info)._vptr_Dwarf_line_info =\n       (_func_int_varargs **)&PTR__Sized_dwarf_line_info_00426be0" (field_expression "(this->super_Dwarf_line_info)._vptr_Dwarf_line_info" (parenthesized_expression "(this->super_Dwarf_line_info)" ( (field_expression "this->super_Dwarf_line_info" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(_func_int_varargs **)&PTR__Sized_dwarf_line_info_00426be0" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&PTR__Sized_dwarf_line_info_00426be0" & identifier))) ;) (if_statement "if (this->buffer_start_ != (uchar *)0x0) {\n    operator_delete__(this->buffer_start_);\n  }" if (parenthesized_expression "(this->buffer_start_ != (uchar *)0x0)" ( (binary_expression "this->buffer_start_ != (uchar *)0x0" (field_expression "this->buffer_start_" identifier -> field_identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete__(this->buffer_start_);\n  }" { (expression_statement "operator_delete__(this->buffer_start_);" (call_expression "operator_delete__(this->buffer_start_)" identifier (argument_list "(this->buffer_start_)" ( (field_expression "this->buffer_start_" identifier -> field_identifier) ))) ;) })) (labeled_statement "std::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg);" statement_identifier (ERROR "::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std:" : : (comma_expression "_Hashtable<unsigned_int,_std" (binary_expression "_Hashtable<unsigned_int" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int_const,_std" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Offset_to_lineno_entry,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Offset_to_lineno_entry>_>_>,_std" (binary_expression "Offset_to_lineno_entry>_>_" (binary_expression "Offset_to_lineno_entry>_" identifier > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,_std" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Offset_to_lineno_entry,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Offset_to_lineno_entry>_>_>_>,_std" (binary_expression "Offset_to_lineno_entry>_>_>_" (binary_expression "Offset_to_lineno_entry>_>_" (binary_expression "Offset_to_lineno_entry>_" identifier > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "__detail::_Select1st,_std::equal_to<unsigned_int>,_std" identifier (ERROR "::_Select1st,_std::equal_to<unsigned_int>" : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<unsigned_int" identifier < identifier) >) , identifier) : : (binary_expression "hash<unsigned_int>,_std" (binary_expression "hash<unsigned_int" identifier < identifier) > (ERROR "," ,) identifier) :) : (labeled_statement "__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg);" 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<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg);" 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<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg);" statement_identifier (ERROR "::_Prime_rehash_policy,_std:" : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) :) : (labeled_statement "__detail::_Hashtable_traits<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg);" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg);" (comma_expression "_Hashtable_traits<false,_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg)" (binary_expression "_Hashtable_traits<false" identifier < false) , (comma_expression "_false,_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg)" identifier , (binary_expression "_true>_>\n  ::~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg)" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (unary_expression "~_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg)" ~ (call_expression "_Hashtable((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg)" identifier (argument_list "((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_,__in_chrg)" ( (binary_expression "(_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)&this->line_number_map_" (parenthesized_expression "(_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n                 *)" ( (ERROR "_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>,_std::allocator<std::pair<unsigned_int_const,_std::vector<gold::Offset_to_lineno_entry,_std::allocator<gold::Offset_to_lineno_entry>_>_>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::" (comma_expression "_Hashtable<unsigned_int,_std" (binary_expression "_Hashtable<unsigned_int" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int_const,_std" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Offset_to_lineno_entry,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Offset_to_lineno_entry>_>_>,_std" (binary_expression "Offset_to_lineno_entry>_>_" (binary_expression "Offset_to_lineno_entry>_" identifier > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,_std" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Offset_to_lineno_entry,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Offset_to_lineno_entry>_>_>_>,_std" (binary_expression "Offset_to_lineno_entry>_>_>_" (binary_expression "Offset_to_lineno_entry>_>_" (binary_expression "Offset_to_lineno_entry>_" identifier > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<unsigned_int>,_std" (binary_expression "equal_to<unsigned_int" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "hash<unsigned_int>,_std" (binary_expression "hash<unsigned_int" identifier < identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) : : identifier : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) : : identifier : :) (comma_expression "_Hashtable_traits<false,_false,_true>_>\n                 *" (binary_expression "_Hashtable_traits<false" identifier < false) , (comma_expression "_false,_true>_>\n                 *" identifier , (binary_expression "_true>_>\n                 *" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*" * identifier)))) )) & (field_expression "this->line_number_map_" identifier -> field_identifier)) , identifier ))))))) ;)))))) (labeled_statement "std::\n  _Rb_tree<long_int,_std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>,_std::_Select1st<std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>_>,_std::less<long_int>,_std::allocator<std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>_>_>\n  ::_M_erase(&(this->reloc_map_)._M_t,\n             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent);" statement_identifier (ERROR "::\n  _Rb_tree<long_int,_std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>,_std::_Select1st<std::pair<long_int_const,_std::pair<unsigned_int,_long_int>_>_>,_std::less<long_int>,_std::allocator<std::pair<long_int_const,_std:" : : (comma_expression "_Rb_tree<long_int,_std" (binary_expression "_Rb_tree<long_int" identifier < identifier) , identifier) : : (comma_expression "pair<long_int_const,_std" (binary_expression "pair<long_int_const" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int,_long_int>_>,_std" (binary_expression "pair<unsigned_int" identifier < identifier) , (binary_expression "_long_int>_>,_std" (binary_expression "_long_int>_" identifier > identifier) > (ERROR "," ,) identifier)) : : (binary_expression "_Select1st<std" identifier < identifier) : : (comma_expression "pair<long_int_const,_std" (binary_expression "pair<long_int_const" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int,_long_int>_>_>,_std" (binary_expression "pair<unsigned_int" identifier < identifier) , (binary_expression "_long_int>_>_>,_std" (binary_expression "_long_int>_>_" (binary_expression "_long_int>_" identifier > identifier) > identifier) > (ERROR "," ,) identifier)) : : (binary_expression "less<long_int>,_std" (binary_expression "less<long_int" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<long_int_const,_std" (binary_expression "pair<long_int_const" identifier < identifier) , identifier) :) : (expression_statement "pair<unsigned_int,_long_int>_>_>_>\n  ::_M_erase(&(this->reloc_map_)._M_t,\n             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent);" (comma_expression "pair<unsigned_int,_long_int>_>_>_>\n  ::_M_erase(&(this->reloc_map_)._M_t,\n             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent)" (binary_expression "pair<unsigned_int" identifier < identifier) , (binary_expression "_long_int>_>_>_>\n  ::_M_erase(&(this->reloc_map_)._M_t,\n             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent)" (binary_expression "_long_int>_>_>_" (binary_expression "_long_int>_>_" (binary_expression "_long_int>_" identifier > identifier) > identifier) > identifier) > (ERROR "::" : :) (call_expression "_M_erase(&(this->reloc_map_)._M_t,\n             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent)" identifier (argument_list "(&(this->reloc_map_)._M_t,\n             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent)" ( (pointer_expression "&(this->reloc_map_)._M_t" & (field_expression "(this->reloc_map_)._M_t" (parenthesized_expression "(this->reloc_map_)" ( (field_expression "this->reloc_map_" identifier -> field_identifier) )) . field_identifier)) , (field_expression "(_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent" (field_expression "(_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header" (field_expression "(_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header" (field_expression "(_Link_type)(this->reloc_map_)._M_t._M_impl" (field_expression "(_Link_type)(this->reloc_map_)._M_t" (call_expression "(_Link_type)(this->reloc_map_)" (parenthesized_expression "(_Link_type)" ( identifier )) (argument_list "(this->reloc_map_)" ( (field_expression "this->reloc_map_" identifier -> field_identifier) ))) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ))))) ;)) (expression_statement "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl._M_finish;" (field_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl._M_finish" (field_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int" (binary_expression "pvVar1 = (this->files_).\n           super__Vector_base<std::vector<std" (assignment_expression "pvVar1 = (this->files_).\n           super__Vector_base<std" identifier = (binary_expression "(this->files_).\n           super__Vector_base<std" (field_expression "(this->files_).\n           super__Vector_base" (parenthesized_expression "(this->files_)" ( (field_expression "this->files_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::vector" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::vector" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl._M_start;" (field_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl._M_start" (field_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n           ._M_impl" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std::pair<int" (binary_expression "pvVar7 = (this->files_).\n           super__Vector_base<std::vector<std" (assignment_expression "pvVar7 = (this->files_).\n           super__Vector_base<std" identifier = (binary_expression "(this->files_).\n           super__Vector_base<std" (field_expression "(this->files_).\n           super__Vector_base" (parenthesized_expression "(this->files_)" ( (field_expression "this->files_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::vector" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::vector" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR ",_std::__cxx11::basic_string" , identifier : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (pvVar1 != pvVar7) {\n    do {\n      ppVar2 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish;\n      ppVar9 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start;\n      if (ppVar2 != ppVar9) {\n        do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);\n        ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;\n      }\n      if (ppVar9 != (pointer)0x0) {\n        operator_delete(ppVar9);\n      }\n      pvVar7 = pvVar7 + 1;\n    } while (pvVar1 != pvVar7);\n    pvVar7 = (this->files_).\n             super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n             ._M_impl._M_start;\n  }" if (parenthesized_expression "(pvVar1 != pvVar7)" ( (binary_expression "pvVar1 != pvVar7" identifier != identifier) )) (compound_statement "{\n    do {\n      ppVar2 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish;\n      ppVar9 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start;\n      if (ppVar2 != ppVar9) {\n        do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);\n        ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;\n      }\n      if (ppVar9 != (pointer)0x0) {\n        operator_delete(ppVar9);\n      }\n      pvVar7 = pvVar7 + 1;\n    } while (pvVar1 != pvVar7);\n    pvVar7 = (this->files_).\n             super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>_>\n             ._M_impl._M_start;\n  }" { (do_statement "do {\n      ppVar2 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish;\n      ppVar9 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start;\n      if (ppVar2 != ppVar9) {\n        do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);\n        ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;\n      }\n      if (ppVar9 != (pointer)0x0) {\n        operator_delete(ppVar9);\n      }\n      pvVar7 = pvVar7 + 1;\n    } while (pvVar1 != pvVar7);" do (compound_statement "{\n      ppVar2 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish;\n      ppVar9 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start;\n      if (ppVar2 != ppVar9) {\n        do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);\n        ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;\n      }\n      if (ppVar9 != (pointer)0x0) {\n        operator_delete(ppVar9);\n      }\n      pvVar7 = pvVar7 + 1;\n    }" { (expression_statement "ppVar2 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish;" (assignment_expression "ppVar2 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish" identifier = (field_expression "(pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_finish" (field_expression "(pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl" (parenthesized_expression "(pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )" ( (ERROR "pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar7->\n               super__Vector_base<std::pair<int,_std" (binary_expression "pvVar7->\n               super__Vector_base<std::pair<int" (binary_expression "pvVar7->\n               super__Vector_base<std" (field_expression "pvVar7->\n               super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<int,_std" (binary_expression "pair<int" identifier < identifier) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_>_>_>" (binary_expression "allocator<char>_>_>_>_" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "ppVar9 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start;" (assignment_expression "ppVar9 = (pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start" identifier = (field_expression "(pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl._M_start" (field_expression "(pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )._M_impl" (parenthesized_expression "(pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n               )" ( (ERROR "pvVar7->\n               super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar7->\n               super__Vector_base<std::pair<int,_std" (binary_expression "pvVar7->\n               super__Vector_base<std::pair<int" (binary_expression "pvVar7->\n               super__Vector_base<std" (field_expression "pvVar7->\n               super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<int,_std" (binary_expression "pair<int" identifier < identifier) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_>_>_>" (binary_expression "allocator<char>_>_>_>_" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) )) . field_identifier) . field_identifier)) ;) (if_statement "if (ppVar2 != ppVar9) {\n        do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);\n        ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;\n      }" if (parenthesized_expression "(ppVar2 != ppVar9)" ( (binary_expression "ppVar2 != ppVar9" identifier != identifier) )) (compound_statement "{\n        do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);\n        ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;\n      }" { (do_statement "do {\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        } while (ppVar2 != ppVar9);" do (compound_statement "{\n          pcVar3 = (ppVar9->second)._M_dataplus._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }\n          ppVar9 = ppVar9 + 1;\n        }" { (expression_statement "pcVar3 = (ppVar9->second)._M_dataplus._M_p;" (assignment_expression "pcVar3 = (ppVar9->second)._M_dataplus._M_p" identifier = (field_expression "(ppVar9->second)._M_dataplus._M_p" (field_expression "(ppVar9->second)._M_dataplus" (parenthesized_expression "(ppVar9->second)" ( (field_expression "ppVar9->second" 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               *)pcVar3 != &(ppVar9->second).field_2) {\n            operator_delete(pcVar3);\n          }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).field_2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &(ppVar9->second).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               *)pcVar3 != &(ppVar9->second).field_2" (binary_expression "allocator<char>_>_9\n               *)pcVar3" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n               *)pcVar3" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&(ppVar9->second).field_2" & (field_expression "(ppVar9->second).field_2" (parenthesized_expression "(ppVar9->second)" ( (field_expression "ppVar9->second" identifier -> field_identifier) )) . field_identifier))) )) )) (compound_statement "{\n            operator_delete(pcVar3);\n          }" { (expression_statement "operator_delete(pcVar3);" (call_expression "operator_delete(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) })) (expression_statement "ppVar9 = ppVar9 + 1;" (assignment_expression "ppVar9 = ppVar9 + 1" identifier = (binary_expression "ppVar9 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppVar2 != ppVar9)" ( (binary_expression "ppVar2 != ppVar9" identifier != identifier) )) ;) (expression_statement "ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start;" (assignment_expression "ppVar9 = (pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start" identifier = (field_expression "(pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl._M_start" (field_expression "(pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )._M_impl" (parenthesized_expression "(pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>\n                 )" ( (ERROR "pvVar7->\n                 super__Vector_base<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar7->\n                 super__Vector_base<std::pair<int,_std" (binary_expression "pvVar7->\n                 super__Vector_base<std::pair<int" (binary_expression "pvVar7->\n                 super__Vector_base<std" (field_expression "pvVar7->\n                 super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<int,_std" (binary_expression "pair<int" identifier < identifier) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_>_>_>" (binary_expression "allocator<char>_>_>_>_" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) )) . field_identifier) . field_identifier)) ;) })) (if_statement "if (ppVar9 != (pointer)0x0) {\n        operator_delete(ppVar9);\n      }" if (parenthesized_expression "(ppVar9 != (pointer)0x0)" ( (binary_expression "ppVar9 != (pointer)0x0" identifier != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n        operator_delete(ppVar9);\n      }" { (expression_statement "operator_delete(ppVar9);" (call_expression "operator_delete(ppVar9)" identifier (argument_list "(ppVar9)" ( identifier ))) ;) })) (expression_statement "pvVar7 = pvVar7 + 1;" (assignment_expression "pvVar7 = pvVar7 + 1" identifier = (binary_expression "pvVar7 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pvVar1 != pvVar7)" ( (binary_expression "pvVar1 != pvVar7" identifier != identifier) )) ;) (ERROR "pvVar7 = (this->files_).\n             super__Vector_base<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>,_std::allocator<std::vector<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<int,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar7 = (this->files_).\n             super__Vector_base<std::vector<std::pair<int,_std" (binary_expression "pvVar7 = (this->files_).\n             super__Vector_base<std::vector<std::pair<int" (binary_expression "pvVar7 = (this->files_).\n             super__Vector_base<std::vector<std" (assignment_expression "pvVar7 = (this->files_).\n             super__Vector_base<std" identifier = (binary_expression "(this->files_).\n             super__Vector_base<std" (field_expression "(this->files_).\n             super__Vector_base" (parenthesized_expression "(this->files_)" ( (field_expression "this->files_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::vector" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<int,_std" (binary_expression "pair<int" identifier < 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>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "vector<std" identifier < identifier) : : (comma_expression "pair<int,_std" (binary_expression "pair<int" identifier < 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) : : (comma_expression "pair<int,_std" (binary_expression "pair<int" identifier < 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) : :) (expression_statement "allocator<char>_>_>_>_>_>_>\n             ._M_impl._M_start;" (field_expression "allocator<char>_>_>_>_>_>_>\n             ._M_impl._M_start" (field_expression "allocator<char>_>_>_>_>_>_>\n             ._M_impl" (binary_expression "allocator<char>_>_>_>_>_>_" (binary_expression "allocator<char>_>_>_>_>_" (binary_expression "allocator<char>_>_>_>_" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) })) (if_statement "if (pvVar7 != (pointer)0x0) {\n    operator_delete(pvVar7);\n  }" if (parenthesized_expression "(pvVar7 != (pointer)0x0)" ( (binary_expression "pvVar7 != (pointer)0x0" identifier != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n    operator_delete(pvVar7);\n  }" { (expression_statement "operator_delete(pvVar7);" (call_expression "operator_delete(pvVar7)" identifier (argument_list "(pvVar7)" ( identifier ))) ;) })) (ERROR "pvVar4 = (this->directories_).\n           super__Vector_base<std::vector<std::" (binary_expression "pvVar4 = (this->directories_).\n           super__Vector_base<std::vector<std" (assignment_expression "pvVar4 = (this->directories_).\n           super__Vector_base<std" identifier = (binary_expression "(this->directories_).\n           super__Vector_base<std" (field_expression "(this->directories_).\n           super__Vector_base" (parenthesized_expression "(this->directories_)" ( (field_expression "this->directories_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::vector" : : identifier) < identifier) : :) (labeled_statement "__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>\n           ._M_impl._M_finish;" statement_identifier (ERROR "::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std:" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_>_>,_std" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "vector<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 "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) :) : (expression_statement "allocator<char>_>_>_>_>_>\n           ._M_impl._M_finish;" (field_expression "allocator<char>_>_>_>_>_>\n           ._M_impl._M_finish" (field_expression "allocator<char>_>_>_>_>_>\n           ._M_impl" (binary_expression "allocator<char>_>_>_>_>_" (binary_expression "allocator<char>_>_>_>_" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;)) (ERROR "pvVar8 = (this->directories_).\n           super__Vector_base<std::vector<std::" (binary_expression "pvVar8 = (this->directories_).\n           super__Vector_base<std::vector<std" (assignment_expression "pvVar8 = (this->directories_).\n           super__Vector_base<std" identifier = (binary_expression "(this->directories_).\n           super__Vector_base<std" (field_expression "(this->directories_).\n           super__Vector_base" (parenthesized_expression "(this->directories_)" ( (field_expression "this->directories_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::vector" : : identifier) < identifier) : :) (labeled_statement "__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>\n           ._M_impl._M_start;" statement_identifier (ERROR "::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std:" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_>_>,_std" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "vector<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 "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) :) : (expression_statement "allocator<char>_>_>_>_>_>\n           ._M_impl._M_start;" (field_expression "allocator<char>_>_>_>_>_>\n           ._M_impl._M_start" (field_expression "allocator<char>_>_>_>_>_>\n           ._M_impl" (binary_expression "allocator<char>_>_>_>_>_" (binary_expression "allocator<char>_>_>_>_" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;)) (if_statement "if (pvVar4 != pvVar8) {\n    do {\n      pbVar5 = (pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish;\n      pbVar10 = (pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start;\n      if (pbVar5 != pbVar10) {\n        do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);\n        pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;\n      }\n      if (pbVar10 != (pointer)0x0) {\n        operator_delete(pbVar10);\n      }\n      pvVar8 = pvVar8 + 1;\n    } while (pvVar4 != pvVar8);\n    pvVar8 = (this->directories_).\n             super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>\n             ._M_impl._M_start;\n  }" if (parenthesized_expression "(pvVar4 != pvVar8)" ( (binary_expression "pvVar4 != pvVar8" identifier != identifier) )) (compound_statement "{\n    do {\n      pbVar5 = (pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish;\n      pbVar10 = (pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start;\n      if (pbVar5 != pbVar10) {\n        do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);\n        pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;\n      }\n      if (pbVar10 != (pointer)0x0) {\n        operator_delete(pbVar10);\n      }\n      pvVar8 = pvVar8 + 1;\n    } while (pvVar4 != pvVar8);\n    pvVar8 = (this->directories_).\n             super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>_>_>\n             ._M_impl._M_start;\n  }" { (do_statement "do {\n      pbVar5 = (pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish;\n      pbVar10 = (pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start;\n      if (pbVar5 != pbVar10) {\n        do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);\n        pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;\n      }\n      if (pbVar10 != (pointer)0x0) {\n        operator_delete(pbVar10);\n      }\n      pvVar8 = pvVar8 + 1;\n    } while (pvVar4 != pvVar8);" do (compound_statement "{\n      pbVar5 = (pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish;\n      pbVar10 = (pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start;\n      if (pbVar5 != pbVar10) {\n        do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);\n        pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;\n      }\n      if (pbVar10 != (pointer)0x0) {\n        operator_delete(pbVar10);\n      }\n      pvVar8 = pvVar8 + 1;\n    }" { (expression_statement "pbVar5 = (pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish;" (assignment_expression "pbVar5 = (pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish" identifier = (field_expression "(pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl._M_finish" (field_expression "(pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )._M_impl" (parenthesized_expression "(pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               )" ( (ERROR "pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char,_std" (binary_expression "pvVar8->\n               super__Vector_base<std::__cxx11::basic_string<char" (binary_expression "pvVar8->\n               super__Vector_base<std" (field_expression "pvVar8->\n               super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_>_>" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "pbVar10 = (pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start;" (assignment_expression "pbVar10 = (pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start" identifier = (field_expression "(pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl._M_start" (field_expression "(pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )._M_impl" (parenthesized_expression "(pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                )" ( (ERROR "pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char,_std" (binary_expression "pvVar8->\n                super__Vector_base<std::__cxx11::basic_string<char" (binary_expression "pvVar8->\n                super__Vector_base<std" (field_expression "pvVar8->\n                super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_>_>" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) )) . field_identifier) . field_identifier)) ;) (if_statement "if (pbVar5 != pbVar10) {\n        do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);\n        pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;\n      }" if (parenthesized_expression "(pbVar5 != pbVar10)" ( (binary_expression "pbVar5 != pbVar10" identifier != identifier) )) (compound_statement "{\n        do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);\n        pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;\n      }" { (do_statement "do {\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        } while (pbVar5 != pbVar10);" do (compound_statement "{\n          pcVar3 = (pbVar10->_M_dataplus)._M_p;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }\n          pbVar10 = pbVar10 + 1;\n        }" { (expression_statement "pcVar3 = (pbVar10->_M_dataplus)._M_p;" (assignment_expression "pcVar3 = (pbVar10->_M_dataplus)._M_p" identifier = (field_expression "(pbVar10->_M_dataplus)._M_p" (parenthesized_expression "(pbVar10->_M_dataplus)" ( (field_expression "pbVar10->_M_dataplus" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2) {\n            operator_delete(pcVar3);\n          }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->field_2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)pcVar3 != &pbVar10->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               *)pcVar3 != &pbVar10->field_2" (binary_expression "allocator<char>_>_9\n               *)pcVar3" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n               *)pcVar3" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&pbVar10->field_2" & (field_expression "pbVar10->field_2" identifier -> field_identifier))) )) )) (compound_statement "{\n            operator_delete(pcVar3);\n          }" { (expression_statement "operator_delete(pcVar3);" (call_expression "operator_delete(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) })) (expression_statement "pbVar10 = pbVar10 + 1;" (assignment_expression "pbVar10 = pbVar10 + 1" identifier = (binary_expression "pbVar10 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pbVar5 != pbVar10)" ( (binary_expression "pbVar5 != pbVar10" identifier != identifier) )) ;) (expression_statement "pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start;" (assignment_expression "pbVar10 = (pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start" identifier = (field_expression "(pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl._M_start" (field_expression "(pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )._M_impl" (parenthesized_expression "(pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                  )" ( (ERROR "pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char,_std" (binary_expression "pvVar8->\n                  super__Vector_base<std::__cxx11::basic_string<char" (binary_expression "pvVar8->\n                  super__Vector_base<std" (field_expression "pvVar8->\n                  super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_>_>" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) )) . field_identifier) . field_identifier)) ;) })) (if_statement "if (pbVar10 != (pointer)0x0) {\n        operator_delete(pbVar10);\n      }" if (parenthesized_expression "(pbVar10 != (pointer)0x0)" ( (binary_expression "pbVar10 != (pointer)0x0" identifier != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n        operator_delete(pbVar10);\n      }" { (expression_statement "operator_delete(pbVar10);" (call_expression "operator_delete(pbVar10)" identifier (argument_list "(pbVar10)" ( identifier ))) ;) })) (expression_statement "pvVar8 = pvVar8 + 1;" (assignment_expression "pvVar8 = pvVar8 + 1" identifier = (binary_expression "pvVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pvVar4 != pvVar8)" ( (binary_expression "pvVar4 != pvVar8" identifier != identifier) )) ;) (ERROR "pvVar8 = (this->directories_).\n             super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>,_std::allocator<std::vector<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "pvVar8 = (this->directories_).\n             super__Vector_base<std::vector<std::__cxx11::basic_string<char,_std" (binary_expression "pvVar8 = (this->directories_).\n             super__Vector_base<std::vector<std::__cxx11::basic_string<char" (binary_expression "pvVar8 = (this->directories_).\n             super__Vector_base<std::vector<std" (assignment_expression "pvVar8 = (this->directories_).\n             super__Vector_base<std" identifier = (binary_expression "(this->directories_).\n             super__Vector_base<std" (field_expression "(this->directories_).\n             super__Vector_base" (parenthesized_expression "(this->directories_)" ( (field_expression "this->directories_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::vector" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_>_>,_std" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "vector<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 "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : :) (expression_statement "allocator<char>_>_>_>_>_>\n             ._M_impl._M_start;" (field_expression "allocator<char>_>_>_>_>_>\n             ._M_impl._M_start" (field_expression "allocator<char>_>_>_>_>_>\n             ._M_impl" (binary_expression "allocator<char>_>_>_>_>_" (binary_expression "allocator<char>_>_>_>_" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) })) (if_statement "if (pvVar8 != (pointer)0x0) {\n    operator_delete(pvVar8);\n  }" if (parenthesized_expression "(pvVar8 != (pointer)0x0)" ( (binary_expression "pvVar8 != (pointer)0x0" identifier != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n    operator_delete(pvVar8);\n  }" { (expression_statement "operator_delete(pvVar8);" (call_expression "operator_delete(pvVar8)" identifier (argument_list "(pvVar8)" ( identifier ))) ;) })) (expression_statement "puVar6 = (this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start;" (field_expression "puVar6 = (this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start" (field_expression "puVar6 = (this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl" (binary_expression "puVar6 = (this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_" (binary_expression "puVar6 = (this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char,_std::allocator<unsigned_char" (assignment_expression "puVar6 = (this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char" identifier = (binary_expression "(this->header_).std_opcode_lengths.\n           super__Vector_base<unsigned_char" (field_expression "(this->header_).std_opcode_lengths.\n           super__Vector_base" (field_expression "(this->header_).std_opcode_lengths" (parenthesized_expression "(this->header_)" ( (field_expression "this->header_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR ",_std::allocator" , identifier : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (puVar6 != (pointer)0x0) {\n    operator_delete(puVar6);\n  }" if (parenthesized_expression "(puVar6 != (pointer)0x0)" ( (binary_expression "puVar6 != (pointer)0x0" identifier != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n    operator_delete(puVar6);\n  }" { (expression_statement "operator_delete(puVar6);" (call_expression "operator_delete(puVar6)" identifier (argument_list "(puVar6)" ( identifier ))) ;) })) (expression_statement "operator_delete(this,0x138);" (call_expression "operator_delete(this,0x138)" identifier (argument_list "(this,0x138)" ( identifier , number_literal ))) ;) (return_statement "return;" return ;) (ERROR "}" }))
(translation_unit "void FUN_0016fe30(undefined8 *param_1)\n\n{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}\n\n" (function_definition "void FUN_0016fe30(undefined8 *param_1)\n\n{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}" primitive_type (function_declarator "FUN_0016fe30(undefined8 *param_1)" identifier (parameter_list "(undefined8 *param_1)" ( (parameter_declaration "undefined8 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}" { (declaration "long *plVar1;" (sized_type_specifier "long" long) (pointer_declarator "*plVar1" * identifier) ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar3;" (sized_type_specifier "long" long) (pointer_declarator "*plVar3" * identifier) ;) (declaration "long *plVar4;" (sized_type_specifier "long" long) (pointer_declarator "*plVar4" * identifier) ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar6;" (sized_type_specifier "long" long) (pointer_declarator "*plVar6" * identifier) ;) (expression_statement "*param_1 = &PTR_FUN_00426be0;" (assignment_expression "*param_1 = &PTR_FUN_00426be0" (pointer_expression "*param_1" * identifier) = (pointer_expression "&PTR_FUN_00426be0" & identifier)) ;) (if_statement "if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }" if (parenthesized_expression "(param_1[0xe] != 0)" ( (binary_expression "param_1[0xe] != 0" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    thunk_FUN_002dac70();\n  }" { (expression_statement "thunk_FUN_002dac70();" (call_expression "thunk_FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_0016f1f0(param_1 + 0x20);" (call_expression "FUN_0016f1f0(param_1 + 0x20)" identifier (argument_list "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))) ;) (expression_statement "FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);" (call_expression "FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c])" identifier (argument_list "(param_1 + 0x1a,param_1[0x1c])" ( (binary_expression "param_1 + 0x1a" identifier + number_literal) , (subscript_expression "param_1[0x1c]" identifier [ number_literal ]) ))) ;) (expression_statement "plVar1 = (long *)param_1[0x17];" (assignment_expression "plVar1 = (long *)param_1[0x17]" identifier = (cast_expression "(long *)param_1[0x17]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x17]" identifier [ number_literal ]))) ;) (expression_statement "plVar4 = (long *)param_1[0x16];" (assignment_expression "plVar4 = (long *)param_1[0x16]" identifier = (cast_expression "(long *)param_1[0x16]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x16]" identifier [ number_literal ]))) ;) (if_statement "if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }" if (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) (compound_statement "{\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }" { (do_statement "do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);" do (compound_statement "{\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    }" { (expression_statement "lVar2 = plVar4[1];" (assignment_expression "lVar2 = plVar4[1]" identifier = (subscript_expression "plVar4[1]" identifier [ number_literal ])) ;) (expression_statement "lVar5 = *plVar4;" (assignment_expression "lVar5 = *plVar4" identifier = (pointer_expression "*plVar4" * identifier)) ;) (if_statement "if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }" if (parenthesized_expression "(lVar2 != lVar5)" ( (binary_expression "lVar2 != lVar5" identifier != identifier) )) (compound_statement "{\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }" { (do_statement "do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);" do (compound_statement "{\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        }" { (if_statement "if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }" if (parenthesized_expression "(*(long *)(lVar5 + 8) != lVar5 + 0x18)" ( (binary_expression "*(long *)(lVar5 + 8) != lVar5 + 0x18" (pointer_expression "*(long *)(lVar5 + 8)" * (cast_expression "(long *)(lVar5 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar5 + 8)" ( (binary_expression "lVar5 + 8" identifier + number_literal) )))) != (binary_expression "lVar5 + 0x18" identifier + number_literal)) )) (compound_statement "{\n            FUN_002dac70();\n          }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "lVar5 = lVar5 + 0x28;" (assignment_expression "lVar5 = lVar5 + 0x28" identifier = (binary_expression "lVar5 + 0x28" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar2 != lVar5)" ( (binary_expression "lVar2 != lVar5" identifier != identifier) )) ;) (expression_statement "lVar5 = *plVar4;" (assignment_expression "lVar5 = *plVar4" identifier = (pointer_expression "*plVar4" * identifier)) ;) })) (if_statement "if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }" if (parenthesized_expression "(lVar5 != 0)" ( (binary_expression "lVar5 != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_002dac70(lVar5);\n      }" { (expression_statement "FUN_002dac70(lVar5);" (call_expression "FUN_002dac70(lVar5)" identifier (argument_list "(lVar5)" ( identifier ))) ;) })) (expression_statement "plVar4 = plVar4 + 3;" (assignment_expression "plVar4 = plVar4 + 3" identifier = (binary_expression "plVar4 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) ;) (expression_statement "plVar4 = (long *)param_1[0x16];" (assignment_expression "plVar4 = (long *)param_1[0x16]" identifier = (cast_expression "(long *)param_1[0x16]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x16]" identifier [ number_literal ]))) ;) })) (if_statement "if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }" if (parenthesized_expression "(plVar4 != (long *)0x0)" ( (binary_expression "plVar4 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_002dac70(plVar4);\n  }" { (expression_statement "FUN_002dac70(plVar4);" (call_expression "FUN_002dac70(plVar4)" identifier (argument_list "(plVar4)" ( identifier ))) ;) })) (expression_statement "plVar1 = (long *)param_1[0x14];" (assignment_expression "plVar1 = (long *)param_1[0x14]" identifier = (cast_expression "(long *)param_1[0x14]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x14]" identifier [ number_literal ]))) ;) (expression_statement "plVar4 = (long *)param_1[0x13];" (assignment_expression "plVar4 = (long *)param_1[0x13]" identifier = (cast_expression "(long *)param_1[0x13]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x13]" identifier [ number_literal ]))) ;) (if_statement "if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }" if (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) (compound_statement "{\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }" { (do_statement "do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);" do (compound_statement "{\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    }" { (expression_statement "plVar3 = (long *)plVar4[1];" (assignment_expression "plVar3 = (long *)plVar4[1]" identifier = (cast_expression "(long *)plVar4[1]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar4[1]" identifier [ number_literal ]))) ;) (expression_statement "plVar6 = (long *)*plVar4;" (assignment_expression "plVar6 = (long *)*plVar4" identifier = (cast_expression "(long *)*plVar4" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar4" * identifier))) ;) (if_statement "if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }" if (parenthesized_expression "(plVar3 != plVar6)" ( (binary_expression "plVar3 != plVar6" identifier != identifier) )) (compound_statement "{\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }" { (do_statement "do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);" do (compound_statement "{\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        }" { (if_statement "if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }" if (parenthesized_expression "((long *)*plVar6 != plVar6 + 2)" ( (binary_expression "(long *)*plVar6 != plVar6 + 2" (cast_expression "(long *)*plVar6" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar6" * identifier)) != (binary_expression "plVar6 + 2" identifier + number_literal)) )) (compound_statement "{\n            FUN_002dac70();\n          }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "plVar6 = plVar6 + 4;" (assignment_expression "plVar6 = plVar6 + 4" identifier = (binary_expression "plVar6 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar3 != plVar6)" ( (binary_expression "plVar3 != plVar6" identifier != identifier) )) ;) (expression_statement "plVar6 = (long *)*plVar4;" (assignment_expression "plVar6 = (long *)*plVar4" identifier = (cast_expression "(long *)*plVar4" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar4" * identifier))) ;) })) (if_statement "if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }" if (parenthesized_expression "(plVar6 != (long *)0x0)" ( (binary_expression "plVar6 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        FUN_002dac70(plVar6);\n      }" { (expression_statement "FUN_002dac70(plVar6);" (call_expression "FUN_002dac70(plVar6)" identifier (argument_list "(plVar6)" ( identifier ))) ;) })) (expression_statement "plVar4 = plVar4 + 3;" (assignment_expression "plVar4 = plVar4 + 3" identifier = (binary_expression "plVar4 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar1 != plVar4)" ( (binary_expression "plVar1 != plVar4" identifier != identifier) )) ;) (expression_statement "plVar4 = (long *)param_1[0x13];" (assignment_expression "plVar4 = (long *)param_1[0x13]" identifier = (cast_expression "(long *)param_1[0x13]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x13]" identifier [ number_literal ]))) ;) })) (if_statement "if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }" if (parenthesized_expression "(plVar4 != (long *)0x0)" ( (binary_expression "plVar4 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_002dac70(plVar4);\n  }" { (expression_statement "FUN_002dac70(plVar4);" (call_expression "FUN_002dac70(plVar4)" identifier (argument_list "(plVar4)" ( identifier ))) ;) })) (if_statement "if (param_1[8] != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(param_1[8] != 0)" ( (binary_expression "param_1[8] != 0" (subscript_expression "param_1[8]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "thunk_FUN_002dac70(param_1,0x138);" (call_expression "thunk_FUN_002dac70(param_1,0x138)" identifier (argument_list "(param_1,0x138)" ( identifier , number_literal ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (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 (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (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 (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (return_statement return ;) })))
(function_definition "void FUN_0016fe30(undefined8 *param_1)\n\n{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_0016fe30(undefined8 *param_1)" (identifier "FUN_0016fe30") (parameter_list "(undefined8 *param_1)" (( "(") (parameter_declaration "undefined8 *param_1" (type_identifier "undefined8") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) () ")"))) (compound_statement "{\n  long *plVar1;\n  long lVar2;\n  long *plVar3;\n  long *plVar4;\n  long lVar5;\n  long *plVar6;\n  \n  *param_1 = &PTR_FUN_00426be0;\n  if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }\n  FUN_0016f1f0(param_1 + 0x20);\n  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);\n  plVar1 = (long *)param_1[0x17];\n  plVar4 = (long *)param_1[0x16];\n  if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  plVar1 = (long *)param_1[0x14];\n  plVar4 = (long *)param_1[0x13];\n  if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }\n  if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }\n  if (param_1[8] != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70(param_1,0x138);\n  return;\n}" ({ "{") (declaration "long *plVar1;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar1" (* "*") (identifier "plVar1")) (; ";")) (declaration "long lVar2;" (sized_type_specifier "long" (long "long")) (identifier "lVar2") (; ";")) (declaration "long *plVar3;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar3" (* "*") (identifier "plVar3")) (; ";")) (declaration "long *plVar4;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar4" (* "*") (identifier "plVar4")) (; ";")) (declaration "long lVar5;" (sized_type_specifier "long" (long "long")) (identifier "lVar5") (; ";")) (declaration "long *plVar6;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar6" (* "*") (identifier "plVar6")) (; ";")) (expression_statement "*param_1 = &PTR_FUN_00426be0;" (assignment_expression "*param_1 = &PTR_FUN_00426be0" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (pointer_expression "&PTR_FUN_00426be0" (& "&") (identifier "PTR_FUN_00426be0"))) (; ";")) (if_statement "if (param_1[0xe] != 0) {\n    thunk_FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(param_1[0xe] != 0)" (( "(") (binary_expression "param_1[0xe] != 0" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    thunk_FUN_002dac70();\n  }" ({ "{") (expression_statement "thunk_FUN_002dac70();" (call_expression "thunk_FUN_002dac70()" (identifier "thunk_FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0016f1f0(param_1 + 0x20);" (call_expression "FUN_0016f1f0(param_1 + 0x20)" (identifier "FUN_0016f1f0") (argument_list "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))) (; ";")) (expression_statement "FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);" (call_expression "FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c])" (identifier "FUN_0016f8b0") (argument_list "(param_1 + 0x1a,param_1[0x1c])" (( "(") (binary_expression "param_1 + 0x1a" (identifier "param_1") (+ "+") (number_literal "0x1a")) (, ",") (subscript_expression "param_1[0x1c]" (identifier "param_1") ([ "[") (number_literal "0x1c") (] "]")) () ")"))) (; ";")) (expression_statement "plVar1 = (long *)param_1[0x17];" (assignment_expression "plVar1 = (long *)param_1[0x17]" (identifier "plVar1") (= "=") (cast_expression "(long *)param_1[0x17]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x17]" (identifier "param_1") ([ "[") (number_literal "0x17") (] "]")))) (; ";")) (expression_statement "plVar4 = (long *)param_1[0x16];" (assignment_expression "plVar4 = (long *)param_1[0x16]" (identifier "plVar4") (= "=") (cast_expression "(long *)param_1[0x16]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x16]" (identifier "param_1") ([ "[") (number_literal "0x16") (] "]")))) (; ";")) (if_statement "if (plVar1 != plVar4) {\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }" (if "if") (parenthesized_expression "(plVar1 != plVar4)" (( "(") (binary_expression "plVar1 != plVar4" (identifier "plVar1") (!= "!=") (identifier "plVar4")) () ")")) (compound_statement "{\n    do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x16];\n  }" ({ "{") (do_statement "do {\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);" (do "do") (compound_statement "{\n      lVar2 = plVar4[1];\n      lVar5 = *plVar4;\n      if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }\n      if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }\n      plVar4 = plVar4 + 3;\n    }" ({ "{") (expression_statement "lVar2 = plVar4[1];" (assignment_expression "lVar2 = plVar4[1]" (identifier "lVar2") (= "=") (subscript_expression "plVar4[1]" (identifier "plVar4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "lVar5 = *plVar4;" (assignment_expression "lVar5 = *plVar4" (identifier "lVar5") (= "=") (pointer_expression "*plVar4" (* "*") (identifier "plVar4"))) (; ";")) (if_statement "if (lVar2 != lVar5) {\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }" (if "if") (parenthesized_expression "(lVar2 != lVar5)" (( "(") (binary_expression "lVar2 != lVar5" (identifier "lVar2") (!= "!=") (identifier "lVar5")) () ")")) (compound_statement "{\n        do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);\n        lVar5 = *plVar4;\n      }" ({ "{") (do_statement "do {\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        } while (lVar2 != lVar5);" (do "do") (compound_statement "{\n          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }\n          lVar5 = lVar5 + 0x28;\n        }" ({ "{") (if_statement "if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {\n            FUN_002dac70();\n          }" (if "if") (parenthesized_expression "(*(long *)(lVar5 + 8) != lVar5 + 0x18)" (( "(") (binary_expression "*(long *)(lVar5 + 8) != lVar5 + 0x18" (pointer_expression "*(long *)(lVar5 + 8)" (* "*") (cast_expression "(long *)(lVar5 + 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar5 + 8)" (( "(") (binary_expression "lVar5 + 8" (identifier "lVar5") (+ "+") (number_literal "8")) () ")")))) (!= "!=") (binary_expression "lVar5 + 0x18" (identifier "lVar5") (+ "+") (number_literal "0x18"))) () ")")) (compound_statement "{\n            FUN_002dac70();\n          }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "lVar5 = lVar5 + 0x28;" (assignment_expression "lVar5 = lVar5 + 0x28" (identifier "lVar5") (= "=") (binary_expression "lVar5 + 0x28" (identifier "lVar5") (+ "+") (number_literal "0x28"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar2 != lVar5)" (( "(") (binary_expression "lVar2 != lVar5" (identifier "lVar2") (!= "!=") (identifier "lVar5")) () ")")) (; ";")) (expression_statement "lVar5 = *plVar4;" (assignment_expression "lVar5 = *plVar4" (identifier "lVar5") (= "=") (pointer_expression "*plVar4" (* "*") (identifier "plVar4"))) (; ";")) (} "}"))) (if_statement "if (lVar5 != 0) {\n        FUN_002dac70(lVar5);\n      }" (if "if") (parenthesized_expression "(lVar5 != 0)" (( "(") (binary_expression "lVar5 != 0" (identifier "lVar5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_002dac70(lVar5);\n      }" ({ "{") (expression_statement "FUN_002dac70(lVar5);" (call_expression "FUN_002dac70(lVar5)" (identifier "FUN_002dac70") (argument_list "(lVar5)" (( "(") (identifier "lVar5") () ")"))) (; ";")) (} "}"))) (expression_statement "plVar4 = plVar4 + 3;" (assignment_expression "plVar4 = plVar4 + 3" (identifier "plVar4") (= "=") (binary_expression "plVar4 + 3" (identifier "plVar4") (+ "+") (number_literal "3"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(plVar1 != plVar4)" (( "(") (binary_expression "plVar1 != plVar4" (identifier "plVar1") (!= "!=") (identifier "plVar4")) () ")")) (; ";")) (expression_statement "plVar4 = (long *)param_1[0x16];" (assignment_expression "plVar4 = (long *)param_1[0x16]" (identifier "plVar4") (= "=") (cast_expression "(long *)param_1[0x16]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x16]" (identifier "param_1") ([ "[") (number_literal "0x16") (] "]")))) (; ";")) (} "}"))) (if_statement "if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }" (if "if") (parenthesized_expression "(plVar4 != (long *)0x0)" (( "(") (binary_expression "plVar4 != (long *)0x0" (identifier "plVar4") (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    FUN_002dac70(plVar4);\n  }" ({ "{") (expression_statement "FUN_002dac70(plVar4);" (call_expression "FUN_002dac70(plVar4)" (identifier "FUN_002dac70") (argument_list "(plVar4)" (( "(") (identifier "plVar4") () ")"))) (; ";")) (} "}"))) (expression_statement "plVar1 = (long *)param_1[0x14];" (assignment_expression "plVar1 = (long *)param_1[0x14]" (identifier "plVar1") (= "=") (cast_expression "(long *)param_1[0x14]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x14]" (identifier "param_1") ([ "[") (number_literal "0x14") (] "]")))) (; ";")) (expression_statement "plVar4 = (long *)param_1[0x13];" (assignment_expression "plVar4 = (long *)param_1[0x13]" (identifier "plVar4") (= "=") (cast_expression "(long *)param_1[0x13]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x13]" (identifier "param_1") ([ "[") (number_literal "0x13") (] "]")))) (; ";")) (if_statement "if (plVar1 != plVar4) {\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }" (if "if") (parenthesized_expression "(plVar1 != plVar4)" (( "(") (binary_expression "plVar1 != plVar4" (identifier "plVar1") (!= "!=") (identifier "plVar4")) () ")")) (compound_statement "{\n    do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);\n    plVar4 = (long *)param_1[0x13];\n  }" ({ "{") (do_statement "do {\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    } while (plVar1 != plVar4);" (do "do") (compound_statement "{\n      plVar3 = (long *)plVar4[1];\n      plVar6 = (long *)*plVar4;\n      if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }\n      if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }\n      plVar4 = plVar4 + 3;\n    }" ({ "{") (expression_statement "plVar3 = (long *)plVar4[1];" (assignment_expression "plVar3 = (long *)plVar4[1]" (identifier "plVar3") (= "=") (cast_expression "(long *)plVar4[1]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar4[1]" (identifier "plVar4") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "plVar6 = (long *)*plVar4;" (assignment_expression "plVar6 = (long *)*plVar4" (identifier "plVar6") (= "=") (cast_expression "(long *)*plVar4" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar4" (* "*") (identifier "plVar4")))) (; ";")) (if_statement "if (plVar3 != plVar6) {\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }" (if "if") (parenthesized_expression "(plVar3 != plVar6)" (( "(") (binary_expression "plVar3 != plVar6" (identifier "plVar3") (!= "!=") (identifier "plVar6")) () ")")) (compound_statement "{\n        do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);\n        plVar6 = (long *)*plVar4;\n      }" ({ "{") (do_statement "do {\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        } while (plVar3 != plVar6);" (do "do") (compound_statement "{\n          if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }\n          plVar6 = plVar6 + 4;\n        }" ({ "{") (if_statement "if ((long *)*plVar6 != plVar6 + 2) {\n            FUN_002dac70();\n          }" (if "if") (parenthesized_expression "((long *)*plVar6 != plVar6 + 2)" (( "(") (binary_expression "(long *)*plVar6 != plVar6 + 2" (cast_expression "(long *)*plVar6" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar6" (* "*") (identifier "plVar6"))) (!= "!=") (binary_expression "plVar6 + 2" (identifier "plVar6") (+ "+") (number_literal "2"))) () ")")) (compound_statement "{\n            FUN_002dac70();\n          }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "plVar6 = plVar6 + 4;" (assignment_expression "plVar6 = plVar6 + 4" (identifier "plVar6") (= "=") (binary_expression "plVar6 + 4" (identifier "plVar6") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(plVar3 != plVar6)" (( "(") (binary_expression "plVar3 != plVar6" (identifier "plVar3") (!= "!=") (identifier "plVar6")) () ")")) (; ";")) (expression_statement "plVar6 = (long *)*plVar4;" (assignment_expression "plVar6 = (long *)*plVar4" (identifier "plVar6") (= "=") (cast_expression "(long *)*plVar4" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar4" (* "*") (identifier "plVar4")))) (; ";")) (} "}"))) (if_statement "if (plVar6 != (long *)0x0) {\n        FUN_002dac70(plVar6);\n      }" (if "if") (parenthesized_expression "(plVar6 != (long *)0x0)" (( "(") (binary_expression "plVar6 != (long *)0x0" (identifier "plVar6") (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        FUN_002dac70(plVar6);\n      }" ({ "{") (expression_statement "FUN_002dac70(plVar6);" (call_expression "FUN_002dac70(plVar6)" (identifier "FUN_002dac70") (argument_list "(plVar6)" (( "(") (identifier "plVar6") () ")"))) (; ";")) (} "}"))) (expression_statement "plVar4 = plVar4 + 3;" (assignment_expression "plVar4 = plVar4 + 3" (identifier "plVar4") (= "=") (binary_expression "plVar4 + 3" (identifier "plVar4") (+ "+") (number_literal "3"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(plVar1 != plVar4)" (( "(") (binary_expression "plVar1 != plVar4" (identifier "plVar1") (!= "!=") (identifier "plVar4")) () ")")) (; ";")) (expression_statement "plVar4 = (long *)param_1[0x13];" (assignment_expression "plVar4 = (long *)param_1[0x13]" (identifier "plVar4") (= "=") (cast_expression "(long *)param_1[0x13]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x13]" (identifier "param_1") ([ "[") (number_literal "0x13") (] "]")))) (; ";")) (} "}"))) (if_statement "if (plVar4 != (long *)0x0) {\n    FUN_002dac70(plVar4);\n  }" (if "if") (parenthesized_expression "(plVar4 != (long *)0x0)" (( "(") (binary_expression "plVar4 != (long *)0x0" (identifier "plVar4") (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    FUN_002dac70(plVar4);\n  }" ({ "{") (expression_statement "FUN_002dac70(plVar4);" (call_expression "FUN_002dac70(plVar4)" (identifier "FUN_002dac70") (argument_list "(plVar4)" (( "(") (identifier "plVar4") () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[8] != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(param_1[8] != 0)" (( "(") (binary_expression "param_1[8] != 0" (subscript_expression "param_1[8]" (identifier "param_1") ([ "[") (number_literal "8") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "thunk_FUN_002dac70(param_1,0x138);" (call_expression "thunk_FUN_002dac70(param_1,0x138)" (identifier "thunk_FUN_002dac70") (argument_list "(param_1,0x138)" (( "(") (identifier "param_1") (, ",") (number_literal "0x138") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Type propagation algorithm not settling */
/* DWARF original prototype: void ~Sized_dwarf_line_info(Sized_dwarf_line_info<64,_true> * this, int
   __in_chrg) */

void __thiscall
gold::Sized_dwarf_line_info<64,var_3>::~Sized_dwarf_line_info
          (Sized_dwarf_line_info<64,var_3> *this,int __in_chrg)

{
  type_1 var_14;
  type_1 var_18;
  type_1 var_21;
  type_1 var_23;
  type_1 var_25;
  type_1 var_28;
  type_1 var_15;
  type_1 var_24;
  type_1 var_19;
  type_1 var_26;
  
  (this->super_Dwarf_line_info)._vptr_Dwarf_line_info =
       (type_2 **)&PTR__Sized_dwarf_line_info_00426be0;
  if (this->buffer_start_ != (type_3 *)0x0) {
    var_1(this->buffer_start_);
  }
  std::
  var_5<var_7,var_13::var_6<unsigned_int_const,var_13::vector<gold::Offset_to_lineno_entry,var_13::var_16<gold::Offset_to_lineno_entry>var_4>var_4>,var_13::var_16<var_10::var_6<unsigned_int_const,var_13::vector<gold::Offset_to_lineno_entry,var_13::var_16<gold::Offset_to_lineno_entry>var_4>var_4>var_4>,var_13::__detail::_Select1st,var_13::equal_to<var_7>,var_13::hash<var_7>,var_13::__detail::_Mod_range_hashing,var_13::__detail::_Default_ranged_hash,var_13::__detail::_Prime_rehash_policy,var_13::__detail::var_2<false,_false,var_3>var_4>
  ::~var_5((var_5<var_7,var_13::var_6<unsigned_int_const,var_13::vector<gold::Offset_to_lineno_entry,var_13::var_16<gold::Offset_to_lineno_entry>var_4>var_4>,var_13::var_16<var_10::var_6<unsigned_int_const,var_13::vector<gold::Offset_to_lineno_entry,var_13::var_16<gold::Offset_to_lineno_entry>var_4>var_4>var_4>,var_13::__detail::_Select1st,var_13::equal_to<var_7>,var_13::hash<var_7>,var_13::__detail::_Mod_range_hashing,var_13::__detail::_Default_ranged_hash,var_13::__detail::_Prime_rehash_policy,var_13::__detail::var_2<false,_false,var_3>var_4>
                 *var_17)&this->line_number_map_,__in_chrg);
  std::
  _Rb_tree<long_int,var_13::var_6<long_int_const,var_13::var_6<var_7,var_8>var_4>,var_13::_Select1st<var_10::var_6<long_int_const,var_13::var_6<var_7,var_8>var_4>var_4>,var_13::less<long_int>,var_13::var_16<var_10::var_6<long_int_const,var_13::var_6<var_7,var_8>var_4>var_4>var_4>
  ::var_9(&(this->reloc_map_)._M_t,
             (_Link_type)(this->reloc_map_)._M_t._M_impl.super__Rb_tree_header._M_header._M_parent);
  var_14 = (this->files_).
           super__Vector_base<var_10::vector<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>,var_13::var_16<var_10::vector<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_4>var_4>
           ._M_impl._M_finish;
  var_15 = (this->files_).
           super__Vector_base<var_10::vector<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>,var_13::var_16<var_10::vector<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_4>var_4>
           ._M_impl._M_start;
  if (var_14 != var_15) {
    do {
      var_18 = (var_15->
               super__Vector_base<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_17
               )._M_impl._M_finish;
      var_19 = (var_15->
               super__Vector_base<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_17
               )._M_impl._M_start;
      if (var_18 != var_19) {
        do {
          var_21 = (var_19->second)._M_dataplus._M_p;
          if ((anon_union_16_2_edb7204a_for_basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_20
               *)var_21 != &(var_19->second).field_2) {
            var_22(var_21);
          }
          var_19 = var_19 + 1;
        } while (var_18 != var_19);
        var_19 = (var_15->
                 super__Vector_base<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_17
                 )._M_impl._M_start;
      }
      if (var_19 != (type_1)0x0) {
        var_22(var_19);
      }
      var_15 = var_15 + 1;
    } while (var_14 != var_15);
    var_15 = (this->files_).
             super__Vector_base<var_10::vector<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>,var_13::var_16<var_10::vector<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>,var_13::var_16<var_10::var_6<var_11,var_13::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_4>var_4>
             ._M_impl._M_start;
  }
  if (var_15 != (type_1)0x0) {
    var_22(var_15);
  }
  var_23 = (this->directories_).
           super__Vector_base<var_10::vector<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>,var_13::var_16<var_10::vector<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_4>
           ._M_impl._M_finish;
  var_24 = (this->directories_).
           super__Vector_base<var_10::vector<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>,var_13::var_16<var_10::vector<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_4>
           ._M_impl._M_start;
  if (var_23 != var_24) {
    do {
      var_25 = (var_24->
               super__Vector_base<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_17
               )._M_impl._M_finish;
      var_26 = (var_24->
                super__Vector_base<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_17
                )._M_impl._M_start;
      if (var_25 != var_26) {
        do {
          var_21 = (var_26->_M_dataplus)._M_p;
          if ((anon_union_16_2_edb7204a_for_basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_20
               *)var_21 != &var_26->field_2) {
            var_22(var_21);
          }
          var_26 = var_26 + 1;
        } while (var_25 != var_26);
        var_26 = (var_24->
                  super__Vector_base<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_17
                  )._M_impl._M_start;
      }
      if (var_26 != (type_1)0x0) {
        var_22(var_26);
      }
      var_24 = var_24 + 1;
    } while (var_23 != var_24);
    var_24 = (this->directories_).
             super__Vector_base<var_10::vector<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>,var_13::var_16<var_10::vector<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>,var_13::var_16<var_10::__cxx11::basic_string<var_12,var_13::char_traits<var_12>,var_13::var_16<var_12>var_4>var_4>var_4>var_4>var_4>
             ._M_impl._M_start;
  }
  if (var_24 != (type_1)0x0) {
    var_22(var_24);
  }
  var_28 = (this->header_).std_opcode_lengths.
           super__Vector_base<var_27,var_13::var_16<var_27>var_4>._M_impl._M_start;
  if (var_28 != (type_1)0x0) {
    var_22(var_28);
  }
  var_22(this,0x138);
  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: (identifier))))) body: (compound_statement (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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: (sized_type_specifier) 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 (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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 (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: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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: (sized_type_specifier) 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 (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (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: (sized_type_specifier) 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))))) (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: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))) (return_statement))))

void MASKED(undefined8 *param_1)

{
  long *plVar1;
  long lVar2;
  long *plVar3;
  long *plVar4;
  long lVar5;
  long *plVar6;
  
  *param_1 = &PTR_FUN_00426be0;
  if (param_1[0xe] != 0) {
    thunk_FUN_002dac70();
  }
  FUN_0016f1f0(param_1 + 0x20);
  FUN_0016f8b0(param_1 + 0x1a,param_1[0x1c]);
  plVar1 = (long *)param_1[0x17];
  plVar4 = (long *)param_1[0x16];
  if (plVar1 != plVar4) {
    do {
      lVar2 = plVar4[1];
      lVar5 = *plVar4;
      if (lVar2 != lVar5) {
        do {
          if (*(long *)(lVar5 + 8) != lVar5 + 0x18) {
            FUN_002dac70();
          }
          lVar5 = lVar5 + 0x28;
        } while (lVar2 != lVar5);
        lVar5 = *plVar4;
      }
      if (lVar5 != 0) {
        FUN_002dac70(lVar5);
      }
      plVar4 = plVar4 + 3;
    } while (plVar1 != plVar4);
    plVar4 = (long *)param_1[0x16];
  }
  if (plVar4 != (long *)0x0) {
    FUN_002dac70(plVar4);
  }
  plVar1 = (long *)param_1[0x14];
  plVar4 = (long *)param_1[0x13];
  if (plVar1 != plVar4) {
    do {
      plVar3 = (long *)plVar4[1];
      plVar6 = (long *)*plVar4;
      if (plVar3 != plVar6) {
        do {
          if ((long *)*plVar6 != plVar6 + 2) {
            FUN_002dac70();
          }
          plVar6 = plVar6 + 4;
        } while (plVar3 != plVar6);
        plVar6 = (long *)*plVar4;
      }
      if (plVar6 != (long *)0x0) {
        FUN_002dac70(plVar6);
      }
      plVar4 = plVar4 + 3;
    } while (plVar1 != plVar4);
    plVar4 = (long *)param_1[0x13];
  }
  if (plVar4 != (long *)0x0) {
    FUN_002dac70(plVar4);
  }
  if (param_1[8] != 0) {
    FUN_002dac70();
  }
  thunk_FUN_002dac70(param_1,0x138);
  return;
}

