
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* DWARF original prototype: void ~Dwarf_info_reader(Dwarf_info_reader * this, int __in_chrg) */

void __thiscall gold::Dwarf_info_reader::~Dwarf_info_reader(Dwarf_info_reader *this,int __in_chrg)

{
  Elf_reloc_mapper *pEVar1;
  
  this->_vptr_Dwarf_info_reader = (_func_int_varargs **)(PTR_vtable_004c2a4c + 8);
  if (this->reloc_mapper_ != (Elf_reloc_mapper *)0x0) {
    (*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])();
  }
  if (this->owns_string_buffer_ != false) {
    if (this->string_buffer_ != (char *)0x0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  if ((this->ranges_table_).owns_ranges_buffer_ != false) {
    if ((this->ranges_table_).ranges_buffer_ != (uchar *)0x0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  pEVar1 = (this->ranges_table_).ranges_reloc_mapper_;
  if (pEVar1 != (Elf_reloc_mapper *)0x0) {
    (*pEVar1->_vptr_Elf_reloc_mapper[1])();
  }
  if ((this->abbrev_table_).owns_buffer_ != false) {
    if ((this->abbrev_table_).buffer_ != (uchar *)0x0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  Dwarf_abbrev_table::clear_abbrev_codes(&this->abbrev_table_);
  std::
  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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>_>
  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_);
  if ((this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets !=
      &(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket) {
    (*(code *)PTR_operator_delete_004c12fc)();
    return;
  }
  return;
}



void FUN_002e77e8(undefined4 *param_1)

{
  *param_1 = PTR_vtable_004c2a4c + 8;
  if ((int *)param_1[0x130] != (int *)0x0) {
    (**(code **)(*(int *)param_1[0x130] + 4))();
  }
  if (*(char *)(param_1 + 0x133) != '\0') {
    if (param_1[0x131] != 0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  if (*(char *)(param_1 + 0x12a) != '\0') {
    if (param_1[0x128] != 0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  if ((int *)param_1[299] != (int *)0x0) {
    (**(code **)(*(int *)param_1[299] + 4))();
  }
  if (*(char *)(param_1 + 0x1c) != '\0') {
    if (param_1[0x1a] != 0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));
  std::
  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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>>
  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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>>
           *)(param_1 + 0x11e));
  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {
    (*(code *)PTR_operator_delete_004c12fc)();
    return;
  }
  return;
}


lui gp,0x1e
addiu gp,gp,0x1a58
addu gp,gp,t9
addiu sp,sp,-0x28
lw v0,-0x67f4(gp)
sw s0,0x1c(sp)
or s0,a0,zero
sw gp,0x10(sp)
addiu v0,v0,0x8
sw ra,0x24(sp)
sw s1,0x20(sp)
lw a0,0x4c0(a0)
beq a0,zero,0x002e7834
_sw v0,0x0(s0)
lw v0,0x0(a0)
lw t9,0x4(v0)
jalr t9
_nop
lw gp,0x10(sp)
lbu v0,0x4cc(s0)
beq v0,zero,0x002e7858
_nop
lw a0,0x4c4(s0)
beq a0,zero,0x002e7858
_lw t9,-0x7088(gp)
jalr t9
_nop
lw gp,0x10(sp)
lbu v0,0x4a8(s0)
beq v0,zero,0x002e787c
_nop
lw a0,0x4a0(s0)
beq a0,zero,0x002e787c
_lw t9,-0x7088(gp)
jalr t9
_nop
lw gp,0x10(sp)
lw a0,0x4ac(s0)
beq a0,zero,0x002e789c
_nop
lw v0,0x0(a0)
lw t9,0x4(v0)
jalr t9
_nop
lw gp,0x10(sp)
lbu v0,0x70(s0)
beq v0,zero,0x002e78c0
_addiu s1,s0,0x58
lw a0,0x68(s0)
beq a0,zero,0x002e78c0
_lw t9,-0x7088(gp)
jalr t9
_nop
lw gp,0x10(sp)
lw t9,-0x68b0(gp)
bal 0x002e2978
_or a0,s1,zero
lw gp,0x10(sp)
lw t9,-0x68b4(gp)
bal 0x002e776c
_addiu a0,s0,0x478
addiu v0,s0,0x490
lw a0,0x478(s0)
beq a0,v0,0x002e7904
_lw gp,0x10(sp)
lw ra,0x24(sp)
lw s1,0x20(sp)
lw s0,0x1c(sp)
lw t9,-0x7f44(gp)
jr t9
_addiu sp,sp,0x28
lw ra,0x24(sp)
lw s1,0x20(sp)
lw s0,0x1c(sp)
jr ra
_addiu sp,sp,0x28
(translation_unit "void FUN_002e77e8(undefined4 *param_1)\n\n{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}\n\n" (function_definition "void FUN_002e77e8(undefined4 *param_1)\n\n{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" primitive_type (function_declarator "FUN_002e77e8(undefined4 *param_1)" identifier (parameter_list "(undefined4 *param_1)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" { (expression_statement "*param_1 = PTR_vtable_004c2a4c + 8;" (assignment_expression "*param_1 = PTR_vtable_004c2a4c + 8" (pointer_expression "*param_1" * identifier) = (binary_expression "PTR_vtable_004c2a4c + 8" identifier + number_literal)) ;) (if_statement "if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }" if (parenthesized_expression "((int *)param_1[0x130] != (int *)0x0)" ( (binary_expression "(int *)param_1[0x130] != (int *)0x0" (cast_expression "(int *)param_1[0x130]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x130]" identifier [ number_literal ])) != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }" { (expression_statement "(**(code **)(*(int *)param_1[0x130] + 4))();" (call_expression "(**(code **)(*(int *)param_1[0x130] + 4))()" (parenthesized_expression "(**(code **)(*(int *)param_1[0x130] + 4))" ( (pointer_expression "**(code **)(*(int *)param_1[0x130] + 4)" * (pointer_expression "*(code **)(*(int *)param_1[0x130] + 4)" * (cast_expression "(code **)(*(int *)param_1[0x130] + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1[0x130] + 4)" ( (binary_expression "*(int *)param_1[0x130] + 4" (pointer_expression "*(int *)param_1[0x130]" * (cast_expression "(int *)param_1[0x130]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x130]" identifier [ number_literal ]))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x133) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x133) != '\0'" (pointer_expression "*(char *)(param_1 + 0x133)" * (cast_expression "(char *)(param_1 + 0x133)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x133)" ( (binary_expression "param_1 + 0x133" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "(param_1[0x131] != 0)" ( (binary_expression "param_1[0x131] != 0" (subscript_expression "param_1[0x131]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (if_statement "if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x12a) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x12a) != '\0'" (pointer_expression "*(char *)(param_1 + 0x12a)" * (cast_expression "(char *)(param_1 + 0x12a)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x12a)" ( (binary_expression "param_1 + 0x12a" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "(param_1[0x128] != 0)" ( (binary_expression "param_1[0x128] != 0" (subscript_expression "param_1[0x128]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (if_statement "if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }" if (parenthesized_expression "((int *)param_1[299] != (int *)0x0)" ( (binary_expression "(int *)param_1[299] != (int *)0x0" (cast_expression "(int *)param_1[299]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[299]" identifier [ number_literal ])) != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }" { (expression_statement "(**(code **)(*(int *)param_1[299] + 4))();" (call_expression "(**(code **)(*(int *)param_1[299] + 4))()" (parenthesized_expression "(**(code **)(*(int *)param_1[299] + 4))" ( (pointer_expression "**(code **)(*(int *)param_1[299] + 4)" * (pointer_expression "*(code **)(*(int *)param_1[299] + 4)" * (cast_expression "(code **)(*(int *)param_1[299] + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1[299] + 4)" ( (binary_expression "*(int *)param_1[299] + 4" (pointer_expression "*(int *)param_1[299]" * (cast_expression "(int *)param_1[299]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[299]" identifier [ number_literal ]))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x1c) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x1c) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1c)" * (cast_expression "(char *)(param_1 + 0x1c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "(param_1[0x1a] != 0)" ( (binary_expression "param_1[0x1a] != 0" (subscript_expression "param_1[0x1a]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (labeled_statement "gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" statement_identifier : (ERROR ":" :) (labeled_statement "Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" statement_identifier : (ERROR ":" :) (expression_statement "clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" (call_expression "clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16))" identifier (argument_list "((Dwarf_abbrev_table *)(param_1 + 0x16))" ( (cast_expression "(Dwarf_abbrev_table *)(param_1 + 0x16)" ( (type_descriptor "Dwarf_abbrev_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x16)" ( (binary_expression "param_1 + 0x16" identifier + number_literal) ))) ))) ;))) (labeled_statement "std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier (ERROR "::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold:" : : (comma_expression "_Hashtable<unsigned_int,std" (binary_expression "_Hashtable<unsigned_int" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) :) : (labeled_statement "Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier (ERROR "::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>,std:" : : (comma_expression "Abbrev_code_const*>,std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Dwarf_abbrev_table::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>,std" identifier (ERROR "::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>" : : (comma_expression "Abbrev_code_const*>>,std" 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" identifier < identifier) >) , 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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" 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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" 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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier (ERROR "::_Prime_rehash_policy,std:" : : (comma_expression "_Prime_rehash_policy,std" identifier , identifier) :) : (labeled_statement "__detail::_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (comma_expression "_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" (binary_expression "_Hashtable_traits<false" identifier < false) , (comma_expression "false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" false , (binary_expression "true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" true >> (ERROR "::" : :) (call_expression "clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" identifier (argument_list "((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" ( (call_expression "(_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e)" (parenthesized_expression "(_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : identifier : : (comma_expression "Abbrev_code_const*>,std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : identifier : : (comma_expression "Abbrev_code_const*>>,std" 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           *" false , (binary_expression "true>>\n           *" true >> (pointer_expression "*" * identifier)))) )) (argument_list "(param_1 + 0x11e)" ( (binary_expression "param_1 + 0x11e" identifier + number_literal) ))) )))))) ;))))))) (if_statement "if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" if (parenthesized_expression "((undefined4 *)param_1[0x11e] != param_1 + 0x124)" ( (binary_expression "(undefined4 *)param_1[0x11e] != param_1 + 0x124" (cast_expression "(undefined4 *)param_1[0x11e]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x11e]" identifier [ number_literal ])) != (binary_expression "param_1 + 0x124" identifier + number_literal)) )) (compound_statement "{\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" { (expression_statement "(*(code *)PTR_operator_delete_004c12fc)();" (call_expression "(*(code *)PTR_operator_delete_004c12fc)()" (parenthesized_expression "(*(code *)PTR_operator_delete_004c12fc)" ( (pointer_expression "*(code *)PTR_operator_delete_004c12fc" * (cast_expression "(code *)PTR_operator_delete_004c12fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* DWARF original prototype: void ~Dwarf_info_reader(Dwarf_info_reader * this, int __in_chrg) */\n\nvoid __thiscall gold::Dwarf_info_reader::~Dwarf_info_reader(Dwarf_info_reader *this,int __in_chrg)\n\n{\n  Elf_reloc_mapper *pEVar1;\n  \n  this->_vptr_Dwarf_info_reader = (_func_int_varargs **)(PTR_vtable_004c2a4c + 8);\n  if (this->reloc_mapper_ != (Elf_reloc_mapper *)0x0) {\n    (*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])();\n  }\n  if (this->owns_string_buffer_ != false) {\n    if (this->string_buffer_ != (char *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((this->ranges_table_).owns_ranges_buffer_ != false) {\n    if ((this->ranges_table_).ranges_buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  pEVar1 = (this->ranges_table_).ranges_reloc_mapper_;\n  if (pEVar1 != (Elf_reloc_mapper *)0x0) {\n    (*pEVar1->_vptr_Elf_reloc_mapper[1])();\n  }\n  if ((this->abbrev_table_).owns_buffer_ != false) {\n    if ((this->abbrev_table_).buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  Dwarf_abbrev_table::clear_abbrev_codes(&this->abbrev_table_);\n  std::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_);\n  if ((this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets !=\n      &(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}\n\n" comment comment comment (function_definition "void __thiscall gold::Dwarf_info_reader::~Dwarf_info_reader(Dwarf_info_reader *this,int __in_chrg)\n\n{\n  Elf_reloc_mapper *pEVar1;\n  \n  this->_vptr_Dwarf_info_reader = (_func_int_varargs **)(PTR_vtable_004c2a4c + 8);\n  if (this->reloc_mapper_ != (Elf_reloc_mapper *)0x0) {\n    (*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])();\n  }\n  if (this->owns_string_buffer_ != false) {\n    if (this->string_buffer_ != (char *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((this->ranges_table_).owns_ranges_buffer_ != false) {\n    if ((this->ranges_table_).ranges_buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  pEVar1 = (this->ranges_table_).ranges_reloc_mapper_;\n  if (pEVar1 != (Elf_reloc_mapper *)0x0) {\n    (*pEVar1->_vptr_Elf_reloc_mapper[1])();\n  }\n  if ((this->abbrev_table_).owns_buffer_ != false) {\n    if ((this->abbrev_table_).buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  Dwarf_abbrev_table::clear_abbrev_codes(&this->abbrev_table_);\n  std::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_);\n  if ((this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets !=\n      &(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Dwarf_info_reader::~" identifier : : identifier : : ~) (function_declarator "Dwarf_info_reader(Dwarf_info_reader *this,int __in_chrg)" identifier (parameter_list "(Dwarf_info_reader *this,int __in_chrg)" ( (parameter_declaration "Dwarf_info_reader *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "int __in_chrg" primitive_type identifier) ))) (compound_statement "{\n  Elf_reloc_mapper *pEVar1;\n  \n  this->_vptr_Dwarf_info_reader = (_func_int_varargs **)(PTR_vtable_004c2a4c + 8);\n  if (this->reloc_mapper_ != (Elf_reloc_mapper *)0x0) {\n    (*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])();\n  }\n  if (this->owns_string_buffer_ != false) {\n    if (this->string_buffer_ != (char *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((this->ranges_table_).owns_ranges_buffer_ != false) {\n    if ((this->ranges_table_).ranges_buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  pEVar1 = (this->ranges_table_).ranges_reloc_mapper_;\n  if (pEVar1 != (Elf_reloc_mapper *)0x0) {\n    (*pEVar1->_vptr_Elf_reloc_mapper[1])();\n  }\n  if ((this->abbrev_table_).owns_buffer_ != false) {\n    if ((this->abbrev_table_).buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  Dwarf_abbrev_table::clear_abbrev_codes(&this->abbrev_table_);\n  std::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_);\n  if ((this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets !=\n      &(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" { (declaration "Elf_reloc_mapper *pEVar1;" type_identifier (pointer_declarator "*pEVar1" * identifier) ;) (expression_statement "this->_vptr_Dwarf_info_reader = (_func_int_varargs **)(PTR_vtable_004c2a4c + 8);" (assignment_expression "this->_vptr_Dwarf_info_reader = (_func_int_varargs **)(PTR_vtable_004c2a4c + 8)" (field_expression "this->_vptr_Dwarf_info_reader" identifier -> field_identifier) = (cast_expression "(_func_int_varargs **)(PTR_vtable_004c2a4c + 8)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_vtable_004c2a4c + 8)" ( (binary_expression "PTR_vtable_004c2a4c + 8" identifier + number_literal) )))) ;) (if_statement "if (this->reloc_mapper_ != (Elf_reloc_mapper *)0x0) {\n    (*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])();\n  }" if (parenthesized_expression "(this->reloc_mapper_ != (Elf_reloc_mapper *)0x0)" ( (binary_expression "this->reloc_mapper_ != (Elf_reloc_mapper *)0x0" (field_expression "this->reloc_mapper_" identifier -> field_identifier) != (cast_expression "(Elf_reloc_mapper *)0x0" ( (type_descriptor "Elf_reloc_mapper *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])();\n  }" { (expression_statement "(*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])();" (call_expression "(*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])()" (parenthesized_expression "(*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1])" ( (pointer_expression "*this->reloc_mapper_->_vptr_Elf_reloc_mapper[1]" * (subscript_expression "this->reloc_mapper_->_vptr_Elf_reloc_mapper[1]" (field_expression "this->reloc_mapper_->_vptr_Elf_reloc_mapper" (field_expression "this->reloc_mapper_" identifier -> field_identifier) -> field_identifier) [ number_literal ])) )) (argument_list "()" ( ))) ;) })) (if_statement "if (this->owns_string_buffer_ != false) {\n    if (this->string_buffer_ != (char *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "(this->owns_string_buffer_ != false)" ( (binary_expression "this->owns_string_buffer_ != false" (field_expression "this->owns_string_buffer_" identifier -> field_identifier) != false) )) (compound_statement "{\n    if (this->string_buffer_ != (char *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if (this->string_buffer_ != (char *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "(this->string_buffer_ != (char *)0x0)" ( (binary_expression "this->string_buffer_ != (char *)0x0" (field_expression "this->string_buffer_" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (if_statement "if ((this->ranges_table_).owns_ranges_buffer_ != false) {\n    if ((this->ranges_table_).ranges_buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "((this->ranges_table_).owns_ranges_buffer_ != false)" ( (binary_expression "(this->ranges_table_).owns_ranges_buffer_ != false" (field_expression "(this->ranges_table_).owns_ranges_buffer_" (parenthesized_expression "(this->ranges_table_)" ( (field_expression "this->ranges_table_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    if ((this->ranges_table_).ranges_buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if ((this->ranges_table_).ranges_buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "((this->ranges_table_).ranges_buffer_ != (uchar *)0x0)" ( (binary_expression "(this->ranges_table_).ranges_buffer_ != (uchar *)0x0" (field_expression "(this->ranges_table_).ranges_buffer_" (parenthesized_expression "(this->ranges_table_)" ( (field_expression "this->ranges_table_" identifier -> field_identifier) )) . field_identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (expression_statement "pEVar1 = (this->ranges_table_).ranges_reloc_mapper_;" (assignment_expression "pEVar1 = (this->ranges_table_).ranges_reloc_mapper_" identifier = (field_expression "(this->ranges_table_).ranges_reloc_mapper_" (parenthesized_expression "(this->ranges_table_)" ( (field_expression "this->ranges_table_" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (pEVar1 != (Elf_reloc_mapper *)0x0) {\n    (*pEVar1->_vptr_Elf_reloc_mapper[1])();\n  }" if (parenthesized_expression "(pEVar1 != (Elf_reloc_mapper *)0x0)" ( (binary_expression "pEVar1 != (Elf_reloc_mapper *)0x0" identifier != (cast_expression "(Elf_reloc_mapper *)0x0" ( (type_descriptor "Elf_reloc_mapper *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*pEVar1->_vptr_Elf_reloc_mapper[1])();\n  }" { (expression_statement "(*pEVar1->_vptr_Elf_reloc_mapper[1])();" (call_expression "(*pEVar1->_vptr_Elf_reloc_mapper[1])()" (parenthesized_expression "(*pEVar1->_vptr_Elf_reloc_mapper[1])" ( (pointer_expression "*pEVar1->_vptr_Elf_reloc_mapper[1]" * (subscript_expression "pEVar1->_vptr_Elf_reloc_mapper[1]" (field_expression "pEVar1->_vptr_Elf_reloc_mapper" identifier -> field_identifier) [ number_literal ])) )) (argument_list "()" ( ))) ;) })) (if_statement "if ((this->abbrev_table_).owns_buffer_ != false) {\n    if ((this->abbrev_table_).buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "((this->abbrev_table_).owns_buffer_ != false)" ( (binary_expression "(this->abbrev_table_).owns_buffer_ != false" (field_expression "(this->abbrev_table_).owns_buffer_" (parenthesized_expression "(this->abbrev_table_)" ( (field_expression "this->abbrev_table_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    if ((this->abbrev_table_).buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if ((this->abbrev_table_).buffer_ != (uchar *)0x0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "((this->abbrev_table_).buffer_ != (uchar *)0x0)" ( (binary_expression "(this->abbrev_table_).buffer_ != (uchar *)0x0" (field_expression "(this->abbrev_table_).buffer_" (parenthesized_expression "(this->abbrev_table_)" ( (field_expression "this->abbrev_table_" identifier -> field_identifier) )) . field_identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (labeled_statement "Dwarf_abbrev_table::clear_abbrev_codes(&this->abbrev_table_);" statement_identifier : (ERROR ":" :) (expression_statement "clear_abbrev_codes(&this->abbrev_table_);" (call_expression "clear_abbrev_codes(&this->abbrev_table_)" identifier (argument_list "(&this->abbrev_table_)" ( (pointer_expression "&this->abbrev_table_" & (field_expression "this->abbrev_table_" identifier -> field_identifier)) ))) ;)) (ERROR "std::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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 "std::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>,_std" identifier (ERROR "::\n  _Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_std::__detail::_Select1st,_std::equal_to<unsigned_int>,_std::hash<unsigned_int>" : : (comma_expression "_Hashtable<unsigned_int,_std" (binary_expression "_Hashtable<unsigned_int" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int_const,_const_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_std" identifier (ERROR "::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>" : : (comma_expression "Abbrev_code*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,_const_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (binary_expression "Dwarf_abbrev_table::Abbrev_code*>_" identifier (ERROR "::Abbrev_code*" : : identifier *) > identifier) >) , 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" identifier < identifier) >) , identifier) : : identifier : : identifier , identifier : : identifier : : identifier , identifier : : identifier : : identifier , identifier : : identifier : :) (expression_statement "_Hashtable_traits<false,_false,_true>_>\n  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_);" (comma_expression "_Hashtable_traits<false,_false,_true>_>\n  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_)" (binary_expression "_Hashtable_traits<false" identifier < false) , (comma_expression "_false,_true>_>\n  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_)" identifier , (binary_expression "_true>_>\n  ::clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_)" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (call_expression "clear((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_)" identifier (argument_list "((_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_)" ( (binary_expression "(_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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->abbrev_table_).high_abbrev_codes_" (parenthesized_expression "(_Hashtable<unsigned_int,_std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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,_const_gold::Dwarf_abbrev_table::Abbrev_code*>,_std::allocator<std::pair<unsigned_int_const,_const_gold::Dwarf_abbrev_table::Abbrev_code*>_>,_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,_const_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : identifier : : (comma_expression "Abbrev_code*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,_const_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : identifier : : (binary_expression "Abbrev_code*>_>,_std" (binary_expression "Abbrev_code*>_" identifier * (ERROR ">" >) 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->abbrev_table_).high_abbrev_codes_" (parenthesized_expression "(this->abbrev_table_)" ( (field_expression "this->abbrev_table_" identifier -> field_identifier) )) . field_identifier)) )))))) ;) (if_statement "if ((this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets !=\n      &(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" if (parenthesized_expression "((this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets !=\n      &(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket)" ( (binary_expression "(this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets !=\n      &(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket" (field_expression "(this->abbrev_table_).high_abbrev_codes_._M_h._M_buckets" (field_expression "(this->abbrev_table_).high_abbrev_codes_._M_h" (field_expression "(this->abbrev_table_).high_abbrev_codes_" (parenthesized_expression "(this->abbrev_table_)" ( (field_expression "this->abbrev_table_" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) != (pointer_expression "&(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket" & (field_expression "(this->abbrev_table_).high_abbrev_codes_._M_h._M_single_bucket" (field_expression "(this->abbrev_table_).high_abbrev_codes_._M_h" (field_expression "(this->abbrev_table_).high_abbrev_codes_" (parenthesized_expression "(this->abbrev_table_)" ( (field_expression "this->abbrev_table_" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))) )) (compound_statement "{\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" { (expression_statement "(*(code *)PTR_operator_delete_004c12fc)();" (call_expression "(*(code *)PTR_operator_delete_004c12fc)()" (parenthesized_expression "(*(code *)PTR_operator_delete_004c12fc)" ( (pointer_expression "*(code *)PTR_operator_delete_004c12fc" * (cast_expression "(code *)PTR_operator_delete_004c12fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (return_statement "return;" return ;) })))
(translation_unit "void FUN_002e77e8(undefined4 *param_1)\n\n{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}\n\n" (function_definition "void FUN_002e77e8(undefined4 *param_1)\n\n{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" primitive_type (function_declarator "FUN_002e77e8(undefined4 *param_1)" identifier (parameter_list "(undefined4 *param_1)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" { (expression_statement "*param_1 = PTR_vtable_004c2a4c + 8;" (assignment_expression "*param_1 = PTR_vtable_004c2a4c + 8" (pointer_expression "*param_1" * identifier) = (binary_expression "PTR_vtable_004c2a4c + 8" identifier + number_literal)) ;) (if_statement "if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }" if (parenthesized_expression "((int *)param_1[0x130] != (int *)0x0)" ( (binary_expression "(int *)param_1[0x130] != (int *)0x0" (cast_expression "(int *)param_1[0x130]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x130]" identifier [ number_literal ])) != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }" { (expression_statement "(**(code **)(*(int *)param_1[0x130] + 4))();" (call_expression "(**(code **)(*(int *)param_1[0x130] + 4))()" (parenthesized_expression "(**(code **)(*(int *)param_1[0x130] + 4))" ( (pointer_expression "**(code **)(*(int *)param_1[0x130] + 4)" * (pointer_expression "*(code **)(*(int *)param_1[0x130] + 4)" * (cast_expression "(code **)(*(int *)param_1[0x130] + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1[0x130] + 4)" ( (binary_expression "*(int *)param_1[0x130] + 4" (pointer_expression "*(int *)param_1[0x130]" * (cast_expression "(int *)param_1[0x130]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x130]" identifier [ number_literal ]))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x133) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x133) != '\0'" (pointer_expression "*(char *)(param_1 + 0x133)" * (cast_expression "(char *)(param_1 + 0x133)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x133)" ( (binary_expression "param_1 + 0x133" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "(param_1[0x131] != 0)" ( (binary_expression "param_1[0x131] != 0" (subscript_expression "param_1[0x131]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (if_statement "if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x12a) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x12a) != '\0'" (pointer_expression "*(char *)(param_1 + 0x12a)" * (cast_expression "(char *)(param_1 + 0x12a)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x12a)" ( (binary_expression "param_1 + 0x12a" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "(param_1[0x128] != 0)" ( (binary_expression "param_1[0x128] != 0" (subscript_expression "param_1[0x128]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (if_statement "if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }" if (parenthesized_expression "((int *)param_1[299] != (int *)0x0)" ( (binary_expression "(int *)param_1[299] != (int *)0x0" (cast_expression "(int *)param_1[299]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[299]" identifier [ number_literal ])) != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }" { (expression_statement "(**(code **)(*(int *)param_1[299] + 4))();" (call_expression "(**(code **)(*(int *)param_1[299] + 4))()" (parenthesized_expression "(**(code **)(*(int *)param_1[299] + 4))" ( (pointer_expression "**(code **)(*(int *)param_1[299] + 4)" * (pointer_expression "*(code **)(*(int *)param_1[299] + 4)" * (cast_expression "(code **)(*(int *)param_1[299] + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)param_1[299] + 4)" ( (binary_expression "*(int *)param_1[299] + 4" (pointer_expression "*(int *)param_1[299]" * (cast_expression "(int *)param_1[299]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[299]" identifier [ number_literal ]))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x1c) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x1c) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1c)" * (cast_expression "(char *)(param_1 + 0x1c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" { (if_statement "if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" if (parenthesized_expression "(param_1[0x1a] != 0)" ( (binary_expression "param_1[0x1a] != 0" (subscript_expression "param_1[0x1a]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" { (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" ( (pointer_expression "*(code *)PTR_operator_delete___004c21b8" * (cast_expression "(code *)PTR_operator_delete___004c21b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) })) })) (labeled_statement "gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" statement_identifier : (ERROR ":" :) (labeled_statement "Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" statement_identifier : (ERROR ":" :) (expression_statement "clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" (call_expression "clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16))" identifier (argument_list "((Dwarf_abbrev_table *)(param_1 + 0x16))" ( (cast_expression "(Dwarf_abbrev_table *)(param_1 + 0x16)" ( (type_descriptor "Dwarf_abbrev_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x16)" ( (binary_expression "param_1 + 0x16" identifier + number_literal) ))) ))) ;))) (labeled_statement "std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier (ERROR "::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold:" : : (comma_expression "_Hashtable<unsigned_int,std" (binary_expression "_Hashtable<unsigned_int" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) :) : (labeled_statement "Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier (ERROR "::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>,std:" : : (comma_expression "Abbrev_code_const*>,std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Dwarf_abbrev_table::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>,std" identifier (ERROR "::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>" : : (comma_expression "Abbrev_code_const*>>,std" 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" identifier < identifier) >) , 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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" 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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" 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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier (ERROR "::_Prime_rehash_policy,std:" : : (comma_expression "_Prime_rehash_policy,std" identifier , identifier) :) : (labeled_statement "__detail::_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (comma_expression "_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" (binary_expression "_Hashtable_traits<false" identifier < false) , (comma_expression "false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" false , (binary_expression "true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" true >> (ERROR "::" : :) (call_expression "clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" identifier (argument_list "((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" ( (call_expression "(_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e)" (parenthesized_expression "(_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : identifier : : (comma_expression "Abbrev_code_const*>,std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : identifier : : (comma_expression "Abbrev_code_const*>>,std" 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           *" false , (binary_expression "true>>\n           *" true >> (pointer_expression "*" * identifier)))) )) (argument_list "(param_1 + 0x11e)" ( (binary_expression "param_1 + 0x11e" identifier + number_literal) ))) )))))) ;))))))) (if_statement "if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" if (parenthesized_expression "((undefined4 *)param_1[0x11e] != param_1 + 0x124)" ( (binary_expression "(undefined4 *)param_1[0x11e] != param_1 + 0x124" (cast_expression "(undefined4 *)param_1[0x11e]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[0x11e]" identifier [ number_literal ])) != (binary_expression "param_1 + 0x124" identifier + number_literal)) )) (compound_statement "{\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" { (expression_statement "(*(code *)PTR_operator_delete_004c12fc)();" (call_expression "(*(code *)PTR_operator_delete_004c12fc)()" (parenthesized_expression "(*(code *)PTR_operator_delete_004c12fc)" ( (pointer_expression "*(code *)PTR_operator_delete_004c12fc" * (cast_expression "(code *)PTR_operator_delete_004c12fc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) + LIT) ))))) )) (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) + LIT) ))))) )) (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) })) })) (labeled_statement statement_identifier : (ERROR :) (labeled_statement statement_identifier : (ERROR :) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) ))) ;))) (labeled_statement statement_identifier (ERROR : : (comma_expression (binary_expression IDENT < IDENT) , IDENT) : : (comma_expression (binary_expression IDENT < IDENT) , IDENT) :) : (labeled_statement statement_identifier (ERROR : : (comma_expression IDENT (ERROR * >) , IDENT) : : (binary_expression IDENT < IDENT) : : (comma_expression (binary_expression IDENT < IDENT) , IDENT) : : (comma_expression IDENT (ERROR : : (comma_expression IDENT (ERROR * >>) , IDENT) : : (comma_expression IDENT (ERROR : : (comma_expression IDENT , IDENT) : : (binary_expression IDENT < IDENT) >) , IDENT) : : (binary_expression IDENT < IDENT) >) , IDENT) :) : (labeled_statement statement_identifier (ERROR : : (comma_expression IDENT , IDENT) :) : (labeled_statement statement_identifier (ERROR : : (comma_expression IDENT , IDENT) :) : (labeled_statement statement_identifier (ERROR : : (comma_expression IDENT , IDENT) :) : (labeled_statement statement_identifier : (ERROR :) (expression_statement (comma_expression (binary_expression IDENT < BOOL) , (comma_expression BOOL , (binary_expression BOOL >> (ERROR : :) (call_expression IDENT (argument_list ( (call_expression (parenthesized_expression ( (ERROR (comma_expression (binary_expression IDENT < IDENT) , IDENT) : : (comma_expression (binary_expression IDENT < IDENT) , IDENT) : : IDENT : : (comma_expression IDENT (ERROR * >) , IDENT) : : (binary_expression IDENT < IDENT) : : (comma_expression (binary_expression IDENT < IDENT) , IDENT) : : IDENT : : (comma_expression IDENT (ERROR * >>) , IDENT) : : IDENT : : (comma_expression IDENT , IDENT) : : (binary_expression (binary_expression IDENT < IDENT) > (ERROR ,) IDENT) : : (binary_expression (binary_expression IDENT < IDENT) > (ERROR ,) IDENT) : : IDENT : : (comma_expression IDENT , IDENT) : : IDENT : : (comma_expression IDENT , IDENT) : : IDENT : : (comma_expression IDENT , IDENT) : : IDENT : :) (comma_expression (binary_expression IDENT < BOOL) , (comma_expression BOOL , (binary_expression BOOL >> (pointer_expression * IDENT)))) )) (argument_list ( (binary_expression IDENT + LIT) ))) )))))) ;))))))) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (return_statement return ;) })) (return_statement return ;) })))
(function_definition "void FUN_002e77e8(undefined4 *param_1)\n\n{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_002e77e8(undefined4 *param_1)" (identifier "FUN_002e77e8") (parameter_list "(undefined4 *param_1)" (( "(") (parameter_declaration "undefined4 *param_1" (type_identifier "undefined4") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) () ")"))) (compound_statement "{\n  *param_1 = PTR_vtable_004c2a4c + 8;\n  if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }\n  if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }\n  if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }\n  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));\n  std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));\n  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }\n  return;\n}" ({ "{") (expression_statement "*param_1 = PTR_vtable_004c2a4c + 8;" (assignment_expression "*param_1 = PTR_vtable_004c2a4c + 8" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (binary_expression "PTR_vtable_004c2a4c + 8" (identifier "PTR_vtable_004c2a4c") (+ "+") (number_literal "8"))) (; ";")) (if_statement "if ((int *)param_1[0x130] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }" (if "if") (parenthesized_expression "((int *)param_1[0x130] != (int *)0x0)" (( "(") (binary_expression "(int *)param_1[0x130] != (int *)0x0" (cast_expression "(int *)param_1[0x130]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x130]" (identifier "param_1") ([ "[") (number_literal "0x130") (] "]"))) (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    (**(code **)(*(int *)param_1[0x130] + 4))();\n  }" ({ "{") (expression_statement "(**(code **)(*(int *)param_1[0x130] + 4))();" (call_expression "(**(code **)(*(int *)param_1[0x130] + 4))()" (parenthesized_expression "(**(code **)(*(int *)param_1[0x130] + 4))" (( "(") (pointer_expression "**(code **)(*(int *)param_1[0x130] + 4)" (* "*") (pointer_expression "*(code **)(*(int *)param_1[0x130] + 4)" (* "*") (cast_expression "(code **)(*(int *)param_1[0x130] + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)param_1[0x130] + 4)" (( "(") (binary_expression "*(int *)param_1[0x130] + 4" (pointer_expression "*(int *)param_1[0x130]" (* "*") (cast_expression "(int *)param_1[0x130]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x130]" (identifier "param_1") ([ "[") (number_literal "0x130") (] "]")))) (+ "+") (number_literal "4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x133) != '\0') {\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x133) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x133) != '\0'" (pointer_expression "*(char *)(param_1 + 0x133)" (* "*") (cast_expression "(char *)(param_1 + 0x133)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x133)" (( "(") (binary_expression "param_1 + 0x133" (identifier "param_1") (+ "+") (number_literal "0x133")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" ({ "{") (if_statement "if (param_1[0x131] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" (if "if") (parenthesized_expression "(param_1[0x131] != 0)" (( "(") (binary_expression "param_1[0x131] != 0" (subscript_expression "param_1[0x131]" (identifier "param_1") ([ "[") (number_literal "0x131") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" ({ "{") (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" (( "(") (pointer_expression "*(code *)PTR_operator_delete___004c21b8" (* "*") (cast_expression "(code *)PTR_operator_delete___004c21b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_operator_delete___004c21b8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x12a) != '\0') {\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x12a) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x12a) != '\0'" (pointer_expression "*(char *)(param_1 + 0x12a)" (* "*") (cast_expression "(char *)(param_1 + 0x12a)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x12a)" (( "(") (binary_expression "param_1 + 0x12a" (identifier "param_1") (+ "+") (number_literal "0x12a")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" ({ "{") (if_statement "if (param_1[0x128] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" (if "if") (parenthesized_expression "(param_1[0x128] != 0)" (( "(") (binary_expression "param_1[0x128] != 0" (subscript_expression "param_1[0x128]" (identifier "param_1") ([ "[") (number_literal "0x128") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" ({ "{") (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" (( "(") (pointer_expression "*(code *)PTR_operator_delete___004c21b8" (* "*") (cast_expression "(code *)PTR_operator_delete___004c21b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_operator_delete___004c21b8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if ((int *)param_1[299] != (int *)0x0) {\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }" (if "if") (parenthesized_expression "((int *)param_1[299] != (int *)0x0)" (( "(") (binary_expression "(int *)param_1[299] != (int *)0x0" (cast_expression "(int *)param_1[299]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[299]" (identifier "param_1") ([ "[") (number_literal "299") (] "]"))) (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    (**(code **)(*(int *)param_1[299] + 4))();\n  }" ({ "{") (expression_statement "(**(code **)(*(int *)param_1[299] + 4))();" (call_expression "(**(code **)(*(int *)param_1[299] + 4))()" (parenthesized_expression "(**(code **)(*(int *)param_1[299] + 4))" (( "(") (pointer_expression "**(code **)(*(int *)param_1[299] + 4)" (* "*") (pointer_expression "*(code **)(*(int *)param_1[299] + 4)" (* "*") (cast_expression "(code **)(*(int *)param_1[299] + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)param_1[299] + 4)" (( "(") (binary_expression "*(int *)param_1[299] + 4" (pointer_expression "*(int *)param_1[299]" (* "*") (cast_expression "(int *)param_1[299]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[299]" (identifier "param_1") ([ "[") (number_literal "299") (] "]")))) (+ "+") (number_literal "4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x1c) != '\0') {\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x1c) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x1c) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1c)" (* "*") (cast_expression "(char *)(param_1 + 0x1c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }\n  }" ({ "{") (if_statement "if (param_1[0x1a] != 0) {\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" (if "if") (parenthesized_expression "(param_1[0x1a] != 0)" (( "(") (binary_expression "param_1[0x1a] != 0" (subscript_expression "param_1[0x1a]" (identifier "param_1") ([ "[") (number_literal "0x1a") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_operator_delete___004c21b8)();\n    }" ({ "{") (expression_statement "(*(code *)PTR_operator_delete___004c21b8)();" (call_expression "(*(code *)PTR_operator_delete___004c21b8)()" (parenthesized_expression "(*(code *)PTR_operator_delete___004c21b8)" (( "(") (pointer_expression "*(code *)PTR_operator_delete___004c21b8" (* "*") (cast_expression "(code *)PTR_operator_delete___004c21b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_operator_delete___004c21b8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (labeled_statement "gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" (statement_identifier "gold") (: ":") (ERROR ":" (: ":")) (labeled_statement "Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" (statement_identifier "Dwarf_abbrev_table") (: ":") (ERROR ":" (: ":")) (expression_statement "clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));" (call_expression "clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16))" (identifier "clear_abbrev_codes") (argument_list "((Dwarf_abbrev_table *)(param_1 + 0x16))" (( "(") (cast_expression "(Dwarf_abbrev_table *)(param_1 + 0x16)" (( "(") (type_descriptor "Dwarf_abbrev_table *" (type_identifier "Dwarf_abbrev_table") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x16)" (( "(") (binary_expression "param_1 + 0x16" (identifier "param_1") (+ "+") (number_literal "0x16")) () ")"))) () ")"))) (; ";")))) (labeled_statement "std::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (statement_identifier "std") (ERROR "::\n  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold:" (: ":") (: ":") (comma_expression "_Hashtable<unsigned_int,std" (binary_expression "_Hashtable<unsigned_int" (identifier "_Hashtable") (< "<") (identifier "unsigned_int")) (, ",") (identifier "std")) (: ":") (: ":") (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" (identifier "pair") (< "<") (identifier "unsigned_int_const")) (, ",") (identifier "gold")) (: ":")) (: ":") (labeled_statement "Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (statement_identifier "Dwarf_abbrev_table") (ERROR "::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>,std:" (: ":") (: ":") (comma_expression "Abbrev_code_const*>,std" (identifier "Abbrev_code_const") (ERROR "*>" (* "*") (> ">")) (, ",") (identifier "std")) (: ":") (: ":") (binary_expression "allocator<std" (identifier "allocator") (< "<") (identifier "std")) (: ":") (: ":") (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" (identifier "pair") (< "<") (identifier "unsigned_int_const")) (, ",") (identifier "gold")) (: ":") (: ":") (comma_expression "Dwarf_abbrev_table::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>,std" (identifier "Dwarf_abbrev_table") (ERROR "::Abbrev_code_const*>>,std::__detail::_Select1st,std::equal_to<unsigned_int>,std::hash<unsigned_int>" (: ":") (: ":") (comma_expression "Abbrev_code_const*>>,std" (identifier "Abbrev_code_const") (ERROR "*>>" (* "*") (>> ">>")) (, ",") (identifier "std")) (: ":") (: ":") (comma_expression "__detail::_Select1st,std::equal_to<unsigned_int>,std" (identifier "__detail") (ERROR "::_Select1st,std::equal_to<unsigned_int>" (: ":") (: ":") (comma_expression "_Select1st,std" (identifier "_Select1st") (, ",") (identifier "std")) (: ":") (: ":") (binary_expression "equal_to<unsigned_int" (identifier "equal_to") (< "<") (identifier "unsigned_int")) (> ">")) (, ",") (identifier "std")) (: ":") (: ":") (binary_expression "hash<unsigned_int" (identifier "hash") (< "<") (identifier "unsigned_int")) (> ">")) (, ",") (identifier "std")) (: ":")) (: ":") (labeled_statement "__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (statement_identifier "__detail") (ERROR "::_Mod_range_hashing,std:" (: ":") (: ":") (comma_expression "_Mod_range_hashing,std" (identifier "_Mod_range_hashing") (, ",") (identifier "std")) (: ":")) (: ":") (labeled_statement "__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (statement_identifier "__detail") (ERROR "::_Default_ranged_hash,std:" (: ":") (: ":") (comma_expression "_Default_ranged_hash,std" (identifier "_Default_ranged_hash") (, ",") (identifier "std")) (: ":")) (: ":") (labeled_statement "__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (statement_identifier "__detail") (ERROR "::_Prime_rehash_policy,std:" (: ":") (: ":") (comma_expression "_Prime_rehash_policy,std" (identifier "_Prime_rehash_policy") (, ",") (identifier "std")) (: ":")) (: ":") (labeled_statement "__detail::_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (statement_identifier "__detail") (: ":") (ERROR ":" (: ":")) (expression_statement "_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e));" (comma_expression "_Hashtable_traits<false,false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" (binary_expression "_Hashtable_traits<false" (identifier "_Hashtable_traits") (< "<") (false "false")) (, ",") (comma_expression "false,true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" (false "false") (, ",") (binary_expression "true>>\n  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" (true "true") (>> ">>") (ERROR "::" (: ":") (: ":")) (call_expression "clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" (identifier "clear") (argument_list "((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e))" (( "(") (call_expression "(_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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           *)(param_1 + 0x11e)" (parenthesized_expression "(_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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 "_Hashtable") (< "<") (identifier "unsigned_int")) (, ",") (identifier "std")) (: ":") (: ":") (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" (identifier "pair") (< "<") (identifier "unsigned_int_const")) (, ",") (identifier "gold")) (: ":") (: ":") (identifier "Dwarf_abbrev_table") (: ":") (: ":") (comma_expression "Abbrev_code_const*>,std" (identifier "Abbrev_code_const") (ERROR "*>" (* "*") (> ">")) (, ",") (identifier "std")) (: ":") (: ":") (binary_expression "allocator<std" (identifier "allocator") (< "<") (identifier "std")) (: ":") (: ":") (comma_expression "pair<unsigned_int_const,gold" (binary_expression "pair<unsigned_int_const" (identifier "pair") (< "<") (identifier "unsigned_int_const")) (, ",") (identifier "gold")) (: ":") (: ":") (identifier "Dwarf_abbrev_table") (: ":") (: ":") (comma_expression "Abbrev_code_const*>>,std" (identifier "Abbrev_code_const") (ERROR "*>>" (* "*") (>> ">>")) (, ",") (identifier "std")) (: ":") (: ":") (identifier "__detail") (: ":") (: ":") (comma_expression "_Select1st,std" (identifier "_Select1st") (, ",") (identifier "std")) (: ":") (: ":") (binary_expression "equal_to<unsigned_int>,std" (binary_expression "equal_to<unsigned_int" (identifier "equal_to") (< "<") (identifier "unsigned_int")) (> ">") (ERROR "," (, ",")) (identifier "std")) (: ":") (: ":") (binary_expression "hash<unsigned_int>,std" (binary_expression "hash<unsigned_int" (identifier "hash") (< "<") (identifier "unsigned_int")) (> ">") (ERROR "," (, ",")) (identifier "std")) (: ":") (: ":") (identifier "__detail") (: ":") (: ":") (comma_expression "_Mod_range_hashing,std" (identifier "_Mod_range_hashing") (, ",") (identifier "std")) (: ":") (: ":") (identifier "__detail") (: ":") (: ":") (comma_expression "_Default_ranged_hash,std" (identifier "_Default_ranged_hash") (, ",") (identifier "std")) (: ":") (: ":") (identifier "__detail") (: ":") (: ":") (comma_expression "_Prime_rehash_policy,std" (identifier "_Prime_rehash_policy") (, ",") (identifier "std")) (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (comma_expression "_Hashtable_traits<false,false,true>>\n           *" (binary_expression "_Hashtable_traits<false" (identifier "_Hashtable_traits") (< "<") (false "false")) (, ",") (comma_expression "false,true>>\n           *" (false "false") (, ",") (binary_expression "true>>\n           *" (true "true") (>> ">>") (pointer_expression "*" (* "*") (identifier ""))))) () ")")) (argument_list "(param_1 + 0x11e)" (( "(") (binary_expression "param_1 + 0x11e" (identifier "param_1") (+ "+") (number_literal "0x11e")) () ")"))) () ")")))))) (; ";")))))))) (if_statement "if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" (if "if") (parenthesized_expression "((undefined4 *)param_1[0x11e] != param_1 + 0x124)" (( "(") (binary_expression "(undefined4 *)param_1[0x11e] != param_1 + 0x124" (cast_expression "(undefined4 *)param_1[0x11e]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[0x11e]" (identifier "param_1") ([ "[") (number_literal "0x11e") (] "]"))) (!= "!=") (binary_expression "param_1 + 0x124" (identifier "param_1") (+ "+") (number_literal "0x124"))) () ")")) (compound_statement "{\n    (*(code *)PTR_operator_delete_004c12fc)();\n    return;\n  }" ({ "{") (expression_statement "(*(code *)PTR_operator_delete_004c12fc)();" (call_expression "(*(code *)PTR_operator_delete_004c12fc)()" (parenthesized_expression "(*(code *)PTR_operator_delete_004c12fc)" (( "(") (pointer_expression "*(code *)PTR_operator_delete_004c12fc" (* "*") (cast_expression "(code *)PTR_operator_delete_004c12fc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_operator_delete_004c12fc"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (return_statement "return;" (return "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 (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (number_literal))))))) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (number_literal))))))) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))))) (labeled_statement label: (statement_identifier) (ERROR) (labeled_statement label: (statement_identifier) (ERROR) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (labeled_statement label: (statement_identifier) (ERROR (comma_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) (comma_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier))) (labeled_statement label: (statement_identifier) (ERROR (comma_expression left: (identifier) (ERROR) right: (identifier)) (binary_expression left: (identifier) right: (identifier)) (comma_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) (comma_expression left: (identifier) (ERROR (comma_expression left: (identifier) (ERROR) right: (identifier)) (comma_expression left: (identifier) (ERROR (comma_expression left: (identifier) right: (identifier)) (binary_expression left: (identifier) right: (identifier))) right: (identifier)) (binary_expression left: (identifier) right: (identifier))) right: (identifier))) (labeled_statement label: (statement_identifier) (ERROR (comma_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (ERROR (comma_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (ERROR (comma_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (ERROR) (expression_statement (comma_expression left: (binary_expression left: (identifier) right: (false)) right: (comma_expression left: (false) right: (binary_expression left: (true) (ERROR) right: (call_expression function: (identifier) arguments: (argument_list (call_expression function: (parenthesized_expression (ERROR (comma_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) (comma_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) (identifier) (comma_expression left: (identifier) (ERROR) right: (identifier)) (binary_expression left: (identifier) right: (identifier)) (comma_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) (identifier) (comma_expression left: (identifier) (ERROR) right: (identifier)) (identifier) (comma_expression left: (identifier) right: (identifier)) (binary_expression left: (binary_expression left: (identifier) right: (identifier)) (ERROR) right: (identifier)) (binary_expression left: (binary_expression left: (identifier) right: (identifier)) (ERROR) right: (identifier)) (identifier) (comma_expression left: (identifier) right: (identifier)) (identifier) (comma_expression left: (identifier) right: (identifier)) (identifier) (comma_expression left: (identifier) right: (identifier)) (identifier)) (comma_expression left: (binary_expression left: (identifier) right: (false)) right: (comma_expression left: (false) right: (binary_expression left: (true) right: (pointer_expression argument: (MISSING identifier)))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (return_statement))) (return_statement))))

void MASKED(undefined4 *param_1)

{
  *param_1 = PTR_vtable_004c2a4c + 8;
  if ((int *)param_1[0x130] != (int *)0x0) {
    (**(code **)(*(int *)param_1[0x130] + 4))();
  }
  if (*(char *)(param_1 + 0x133) != '\0') {
    if (param_1[0x131] != 0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  if (*(char *)(param_1 + 0x12a) != '\0') {
    if (param_1[0x128] != 0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  if ((int *)param_1[299] != (int *)0x0) {
    (**(code **)(*(int *)param_1[299] + 4))();
  }
  if (*(char *)(param_1 + 0x1c) != '\0') {
    if (param_1[0x1a] != 0) {
      (*(code *)PTR_operator_delete___004c21b8)();
    }
  }
  gold::Dwarf_abbrev_table::clear_abbrev_codes((Dwarf_abbrev_table *)(param_1 + 0x16));
  std::
  _Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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>>
  ::clear((_Hashtable<unsigned_int,std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>,std::allocator<std::pair<unsigned_int_const,gold::Dwarf_abbrev_table::Abbrev_code_const*>>,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>>
           *)(param_1 + 0x11e));
  if ((undefined4 *)param_1[0x11e] != param_1 + 0x124) {
    (*(code *)PTR_operator_delete_004c12fc)();
    return;
  }
  return;
}

