
/* DWARF original name: _M_emplace<std::pair<std::__cxx11::basic_string<char,
   std::char_traits<char>, std::allocator<char> >, gold::Archive*> >
   DWARF original prototype:
   pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
   _M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>(_Hashtable<const_gold::Symbol*,_std::pair<const_gold::Symbol*_const,_int>,_std::allocator<std::pair<const_gold::Symbol*_const,_int>_>,_std::__detail::_Select1st,_std::equal_to<const_gold::Symbol*>,_std::hash<const_gold::Symbol*>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>
   * this, true_type param_2,
   pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>
   * __args#0) */

pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
 __thiscall
std::
_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
::
_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>
          (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
                 *param_2,undefined4 param_3,undefined4 *param_4)

{
  undefined *puVar1;
  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
  *this_00;
  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
  *p_Var2;
  undefined4 uVar3;
  uint __code;
  __node_base *p_Var4;
  int iVar5;
  int iVar6;
  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
  *p_Var7;
  __node_type *__n;
  int *piVar8;
  undefined4 uVar9;
  undefined4 uVar10;
  uint uVar11;
  _Hash_node_base *p_Var12;
  __node_type *__n_00;
  undefined8 uVar13;
  pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
  pVar14;
  pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
  pVar15;
  pair<bool,_unsigned_int> __do_rehash;
  __rehash_state local_30 [4];
  
  this_00 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
             *)(*(code *)PTR_operator_new_004c13a8)(0x24);
  p_Var7 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
            *)*param_4;
  p_Var2 = this_00 + 0xc;
  *(undefined4 *)this_00 = 0;
  *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
    **)(this_00 + 4) = p_Var2;
  if (p_Var7 == (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
                 *)(param_4 + 2)) {
    uVar10 = *(undefined4 *)(p_Var7 + 4);
    uVar9 = *(undefined4 *)(p_Var7 + 8);
    uVar3 = *(undefined4 *)(p_Var7 + 0xc);
    *(undefined4 *)p_Var2 = *(undefined4 *)p_Var7;
    *(undefined4 *)(this_00 + 0x10) = uVar10;
    *(undefined4 *)(this_00 + 0x14) = uVar9;
    *(undefined4 *)(this_00 + 0x18) = uVar3;
  }
  else {
    uVar3 = param_4[2];
    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
      **)(this_00 + 4) = p_Var7;
    *(undefined4 *)(this_00 + 0xc) = uVar3;
    p_Var2 = p_Var7;
  }
  puVar1 = PTR__Hash_bytes_004c22cc;
  uVar3 = param_4[1];
  *param_4 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
              *)(param_4 + 2);
  *(undefined4 *)(this_00 + 0x1c) = param_4[6];
  param_4[1] = 0;
  *(undefined1 *)(param_4 + 2) = 0;
  *(undefined4 *)(this_00 + 8) = uVar3;
  uVar13 = (*(code *)puVar1)(p_Var2,uVar3,0xc70f6907);
  __code = (uint)((ulonglong)uVar13 >> 0x20);
  uVar3 = (undefined4)uVar13;
  uVar11 = *(uint *)(param_2 + 4);
  if (uVar11 == 0) {
    trap(7);
  }
  __n_00 = (__node_type *)(__code % uVar11);
  __n = __n_00;
  p_Var4 = _M_find_before_node(param_2,(size_type)__n_00,(key_type *)(this_00 + 4),__code);
  if ((p_Var4 != (__node_base *)0x0) &&
     (p_Var12 = p_Var4->_M_nxt, p_Var12 != (_Hash_node_base *)0x0)) {
    __detail::
    _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
    ::_M_deallocate_node(this_00,__n);
    *(_Hash_node_base **)this = p_Var12;
    this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
               )0x0;
    pVar14.first.
    super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
                 )this;
    pVar14._4_4_ = uVar3;
    return pVar14;
  }
  local_30[0] = *(__rehash_state *)(param_2 + 0x14);
  (*(code *)PTR__M_need_rehash_004c1ac8)
            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);
  if (__do_rehash.first != false) {
                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */
    _M_rehash(param_2,__do_rehash.second,local_30);
    if (*(uint *)(param_2 + 4) == 0) {
      trap(7);
    }
    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));
  }
  iVar6 = *(int *)param_2;
  *(uint *)(this_00 + 0x20) = __code;
  piVar8 = (int *)(iVar6 + (int)__n_00 * 4);
  if ((undefined4 *)*piVar8 == (undefined4 *)0x0) {
    iVar5 = *(int *)(param_2 + 8);
    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
      **)(param_2 + 8) = this_00;
    *(int *)this_00 = iVar5;
    if (iVar5 != 0) {
      if (*(uint *)(param_2 + 4) == 0) {
        trap(7);
      }
      *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;
    }
    *piVar8 = (int)(param_2 + 8);
  }
  else {
    *(undefined4 *)this_00 = *(undefined4 *)*piVar8;
    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
      **)*piVar8 = this_00;
  }
  iVar6 = *(int *)(param_2 + 0xc);
  *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
    **)this = this_00;
  *(int *)(param_2 + 0xc) = iVar6 + 1;
  this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
             )0x1;
  pVar15.first.
  super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
  ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
             )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
               )this;
  pVar15._4_4_ = 1;
  return pVar15;
}



/* std::pair<std::__detail::_Node_iterator<std::pair<std::string const, gold::Archive*>, false,
   true>, bool> std::_Hashtable<std::string, std::pair<std::string const, gold::Archive*>,
   std::allocator<std::pair<std::string const, gold::Archive*> >, std::__detail::_Select1st,
   std::equal_to<std::string >, std::hash<std::string >, std::__detail::_Mod_range_hashing,
   std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy,
   std::__detail::_Hashtable_traits<true, false, true> >::_M_emplace<std::pair<std::string,
   gold::Archive*> >(std::integral_constant<bool, true>, std::pair<std::string, gold::Archive*>&&)
    */

int * std::
      _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>
      ::_M_emplace<std::pair<std::string,gold::Archive*>>
                (int *param_1,
                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>
                *param_2,undefined4 param_3,undefined4 *param_4)

{
  undefined *puVar1;
  int *piVar2;
  int iVar3;
  uint uVar4;
  int *piVar5;
  int iVar6;
  int *piVar7;
  int iVar8;
  uint uVar9;
  uint uVar10;
  char local_38 [4];
  uint *local_34;
  undefined4 local_30;
  
  piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24);
  piVar7 = (int *)*param_4;
  piVar5 = piVar2 + 3;
  *piVar2 = 0;
  piVar2[1] = (int)piVar5;
  if (piVar7 == param_4 + 2) {
    iVar8 = piVar7[1];
    iVar6 = piVar7[2];
    iVar3 = piVar7[3];
    *piVar5 = *piVar7;
    piVar2[4] = iVar8;
    piVar2[5] = iVar6;
    piVar2[6] = iVar3;
  }
  else {
    iVar3 = param_4[2];
    piVar2[1] = (int)piVar7;
    piVar2[3] = iVar3;
    piVar5 = piVar7;
  }
  puVar1 = PTR__Hash_bytes_004c22cc;
  iVar3 = param_4[1];
  *param_4 = param_4 + 2;
  piVar2[7] = param_4[6];
  param_4[1] = 0;
  *(undefined1 *)(param_4 + 2) = 0;
  piVar2[2] = iVar3;
  uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907);
  uVar9 = *(uint *)(param_2 + 4);
  if (uVar9 == 0) {
    trap(7);
  }
  uVar10 = uVar4 % uVar9;
  piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4);
  if ((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)) {
    FUN_0014bbac(piVar2);
    *param_1 = iVar3;
    *(undefined1 *)(param_1 + 1) = 0;
    return param_1;
  }
  local_30 = *(undefined4 *)(param_2 + 0x14);
  (*(code *)PTR__M_need_rehash_004c1ac8)
            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1);
  if (local_38[0] != '\0') {
                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */
    _M_rehash((uint)param_2,local_34);
    if (*(uint *)(param_2 + 4) == 0) {
      trap(7);
    }
    uVar10 = uVar4 % *(uint *)(param_2 + 4);
  }
  iVar3 = *(int *)param_2;
  piVar2[8] = uVar4;
  piVar5 = (int *)(iVar3 + uVar10 * 4);
  if ((int *)*piVar5 == (int *)0x0) {
    iVar6 = *(int *)(param_2 + 8);
    *(int **)(param_2 + 8) = piVar2;
    *piVar2 = iVar6;
    if (iVar6 != 0) {
      if (*(uint *)(param_2 + 4) == 0) {
        trap(7);
      }
      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;
    }
    *piVar5 = (int)(param_2 + 8);
  }
  else {
    *piVar2 = *(int *)*piVar5;
    *(int **)*piVar5 = piVar2;
  }
  iVar3 = *(int *)(param_2 + 0xc);
  *param_1 = (int)piVar2;
  *(int *)(param_2 + 0xc) = iVar3 + 1;
  *(undefined1 *)(param_1 + 1) = 1;
  return param_1;
}


lui gp,0x37
addiu gp,gp,0x7218
addu gp,gp,t9
addiu sp,sp,-0x58
lw t9,-0x7e98(gp)
sw s3,0x44(sp)
or s3,a0,zero
sw s1,0x3c(sp)
li a0,0x24
or s1,a3,zero
sw gp,0x18(sp)
sw s4,0x48(sp)
sw s2,0x40(sp)
or s2,a1,zero
sw s0,0x38(sp)
sw ra,0x54(sp)
sw s6,0x50(sp)
sw s5,0x4c(sp)
jalr t9
_sw a2,0x60(sp)
addiu v1,s1,0x8
lw a0,0x0(s1)
or s0,v0,zero
addiu v0,v0,0xc
lw gp,0x18(sp)
sw zero,0x0(s0)
addiu s4,s0,0x4
beq a0,v1,0x00152260
_sw v0,0x4(s0)
lw v0,0x8(s1)
sw a0,0x4(s0)
sw v0,0xc(s0)
lw v0,0x4(s1)
lui a2,0xc70f
lw a3,0x18(s1)
lw t9,-0x6f74(gp)
addiu a2,a2,0x6907
sw v1,0x0(s1)
or a1,v0,zero
sw a3,0x1c(s0)
sw zero,0x4(s1)
sb zero,0x8(s1)
jalr t9
_sw v0,0x8(s0)
or a2,s4,zero
lw s1,0x4(s2)
or a3,v0,zero
lw gp,0x18(sp)
or a0,s2,zero
or s5,v0,zero
teq s1,zero
divu v0,s1
lw t9,-0x5e34(gp)
mfhi s4
bal 0x00151bd4
_or a1,s4,zero
beq v0,zero,0x0015215c
_lw gp,0x18(sp)
lw s6,0x0(v0)
beq s6,zero,0x0015215c
_lw t9,-0x5eb8(gp)
addiu t9,t9,-0x4454
bal 0x0014bbac
_or a0,s0,zero
or v0,s3,zero
lw ra,0x54(sp)
lw s5,0x4c(sp)
lw s4,0x48(sp)
lw s2,0x40(sp)
lw s1,0x3c(sp)
lw s0,0x38(sp)
sw s6,0x0(s3)
sb zero,0x4(s3)
lw s6,0x50(sp)
lw s3,0x44(sp)
jr ra
_addiu sp,sp,0x58
lw v0,0x14(s2)
li v1,0x1
lw t9,-0x7778(gp)
addiu a1,s2,0x10
lw a3,0xc(s2)
addiu a0,sp,0x20
sw v0,0x28(sp)
or a2,s1,zero
jalr t9
_sw v1,0x10(sp)
lbu v0,0x20(sp)
beq v0,zero,0x001521b4
_lw gp,0x18(sp)
lw a1,0x24(sp)
addiu a2,sp,0x28
lw t9,-0x5dcc(gp)
bal 0x00151ec0
_or a0,s2,zero
lw a1,0x4(s2)
teq a1,zero
divu s5,a1
mfhi s4
lw v1,0x0(s2)
sll a1,s4,0x2
sw s5,0x20(s0)
addu a1,v1,a1
lw v0,0x0(a1)
beq v0,zero,0x00152224
_nop
lw v0,0x0(v0)
sw v0,0x0(s0)
lw v0,0x0(a1)
sw s0,0x0(v0)
lw v0,0xc(s2)
li v1,0x1
lw ra,0x54(sp)
lw s6,0x50(sp)
addiu v0,v0,0x1
lw s5,0x4c(sp)
lw s4,0x48(sp)
lw s1,0x3c(sp)
sw s0,0x0(s3)
sw v0,0xc(s2)
or v0,s3,zero
sb v1,0x4(s3)
lw s2,0x40(sp)
lw s3,0x44(sp)
lw s0,0x38(sp)
jr ra
_addiu sp,sp,0x58
lw v0,0x8(s2)
sw s0,0x8(s2)
beq v0,zero,0x00152254
_sw v0,0x0(s0)
lw a0,0x20(v0)
lw v0,0x4(s2)
teq v0,zero
divu a0,v0
mfhi v0
sll v0,v0,0x2
addu v1,v1,v0
sw s0,0x0(v1)
addiu v0,s2,0x8
b 0x001521e0
_sw v0,0x0(a1)
lwl t0,0x0(a0)
lwl a3,0x4(a0)
lwl a2,0x8(a0)
lwl a1,0xc(a0)
lwr t0,0x3(a0)
lwr a3,0x7(a0)
lwr a2,0xb(a0)
lwr a1,0xf(a0)
or a0,v0,zero
swl t0,0x0(v0)
swr t0,0x3(v0)
swl a3,0x4(v0)
swr a3,0x7(v0)
swl a2,0x8(v0)
swr a2,0xb(v0)
swl a1,0xc(v0)
b 0x001520a8
_swr a1,0xf(v0)
(translation_unit "/* std::pair<std::__detail::_Node_iterator<std::pair<std::string const, gold::Archive*>, false,\n   true>, bool> std::_Hashtable<std::string, std::pair<std::string const, gold::Archive*>,\n   std::allocator<std::pair<std::string const, gold::Archive*> >, std::__detail::_Select1st,\n   std::equal_to<std::string >, std::hash<std::string >, std::__detail::_Mod_range_hashing,\n   std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy,\n   std::__detail::_Hashtable_traits<true, false, true> >::_M_emplace<std::pair<std::string,\n   gold::Archive*> >(std::integral_constant<bool, true>, std::pair<std::string, gold::Archive*>&&)\n    */\n\nint * std::\n      _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n      ::_M_emplace<std::pair<std::string,gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1;\n  int *piVar2;\n  int iVar3;\n  uint uVar4;\n  int *piVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  uint uVar10;\n  char local_38 [4];\n  uint *local_34;\n  undefined4 local_30;\n  \n  piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24);\n  piVar7 = (int *)*param_4;\n  piVar5 = piVar2 + 3;\n  *piVar2 = 0;\n  piVar2[1] = (int)piVar5;\n  if (piVar7 == param_4 + 2) {\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }\n  else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }\n  puVar1 = PTR__Hash_bytes_004c22cc;\n  iVar3 = param_4[1];\n  *param_4 = param_4 + 2;\n  piVar2[7] = param_4[6];\n  param_4[1] = 0;\n  *(undefined1 *)(param_4 + 2) = 0;\n  piVar2[2] = iVar3;\n  uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907);\n  uVar9 = *(uint *)(param_2 + 4);\n  if (uVar9 == 0) {\n    trap(7);\n  }\n  uVar10 = uVar4 % uVar9;\n  piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4);\n  if ((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)) {\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }\n  local_30 = *(undefined4 *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1);\n  if (local_38[0] != '\0') {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }\n  iVar3 = *(int *)param_2;\n  piVar2[8] = uVar4;\n  piVar5 = (int *)(iVar3 + uVar10 * 4);\n  if ((int *)*piVar5 == (int *)0x0) {\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }\n  else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }\n  iVar3 = *(int *)(param_2 + 0xc);\n  *param_1 = (int)piVar2;\n  *(int *)(param_2 + 0xc) = iVar3 + 1;\n  *(undefined1 *)(param_1 + 1) = 1;\n  return param_1;\n}\n\n" comment (declaration "int * std::\n      _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n      ::_M_emplace<std::pair<std::string,gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1;" primitive_type (pointer_declarator "* std::\n      _Hashtable<std::string" * (ERROR "std::\n      _Hashtable<std::" identifier : : identifier < identifier : :) identifier) , (ERROR "std::pair<std::" identifier : : identifier < identifier : :) identifier , (ERROR "gold::" identifier : :) identifier (ERROR "*>" * >) , (ERROR "std::allocator<std::pair<std::" identifier : : identifier < identifier : : identifier < identifier : :) identifier , (ERROR "gold::" identifier : :) identifier (ERROR "*>>" * >>) , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::equal_to<std::" identifier : : identifier < identifier : :) identifier (ERROR ">" >) , (ERROR "std::hash<std::" identifier : : identifier < identifier : :) identifier (ERROR ">" >) , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::__detail::" identifier : : identifier : :) identifier (ERROR "<true" < true) , identifier , (ERROR "true>>\n      ::_M_emplace<std::pair<std::" identifier >> : : identifier < identifier : : identifier < identifier : :) identifier , (ERROR "gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined" identifier : : (function_declarator "Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)" identifier (ERROR "*>>" * >>) (parameter_list "(int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "_Hashtable<std::string" type_identifier (ERROR "<std::" < identifier : :) identifier) , (parameter_declaration "std::pair<std::string_const" type_identifier (ERROR "::pair<std::" : : identifier < identifier : :) identifier) , (parameter_declaration "gold::Archive" type_identifier (ERROR "::" : :) identifier) (ERROR "*>" * >) , (parameter_declaration "std::allocator<std::pair<std::string_const" type_identifier (ERROR "::allocator<std::pair<std::" : : identifier < identifier : : identifier < identifier : :) identifier) , (parameter_declaration "gold::Archive" type_identifier (ERROR "::" : :) identifier) (ERROR "*>>" * >>) , (parameter_declaration "std::__detail::_Select1st" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::equal_to<std::string" type_identifier (ERROR "::equal_to<std::" : : identifier < identifier : :) identifier) (ERROR ">" >) , (parameter_declaration "std::hash<std::string" type_identifier (ERROR "::hash<std::" : : identifier < identifier : :) identifier) (ERROR ">" >) , (parameter_declaration "std::__detail::_Mod_range_hashing" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::__detail::_Default_ranged_hash" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::__detail::_Prime_rehash_policy" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::__detail::_Hashtable_traits" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) (ERROR "<true" < true) , (parameter_declaration "false" type_identifier) , (parameter_declaration "true>>\n                *param_2" type_identifier (ERROR ">>" >>) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) ))) { identifier) (pointer_declarator "*puVar1" * identifier) ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "char local_38 [4];" primitive_type (array_declarator "local_38 [4]" identifier [ number_literal ]) ;) (declaration "uint *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (expression_statement "piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24);" (assignment_expression "piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24)" identifier = (cast_expression "(int *)(*(code *)PTR_operator_new_004c13a8)(0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_operator_new_004c13a8)(0x24)" (parenthesized_expression "(*(code *)PTR_operator_new_004c13a8)" ( (pointer_expression "*(code *)PTR_operator_new_004c13a8" * (cast_expression "(code *)PTR_operator_new_004c13a8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "piVar7 = (int *)*param_4;" (assignment_expression "piVar7 = (int *)*param_4" identifier = (cast_expression "(int *)*param_4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_4" * identifier))) ;) (expression_statement "piVar5 = piVar2 + 3;" (assignment_expression "piVar5 = piVar2 + 3" identifier = (binary_expression "piVar2 + 3" identifier + number_literal)) ;) (expression_statement "*piVar2 = 0;" (assignment_expression "*piVar2 = 0" (pointer_expression "*piVar2" * identifier) = number_literal) ;) (expression_statement "piVar2[1] = (int)piVar5;" (assignment_expression "piVar2[1] = (int)piVar5" (subscript_expression "piVar2[1]" identifier [ number_literal ]) = (cast_expression "(int)piVar5" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar7 == param_4 + 2) {\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }\n  else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" if (parenthesized_expression "(piVar7 == param_4 + 2)" ( (binary_expression "piVar7 == param_4 + 2" identifier == (binary_expression "param_4 + 2" identifier + number_literal)) )) (compound_statement "{\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }" { (expression_statement "iVar8 = piVar7[1];" (assignment_expression "iVar8 = piVar7[1]" identifier = (subscript_expression "piVar7[1]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = piVar7[2];" (assignment_expression "iVar6 = piVar7[2]" identifier = (subscript_expression "piVar7[2]" identifier [ number_literal ])) ;) (expression_statement "iVar3 = piVar7[3];" (assignment_expression "iVar3 = piVar7[3]" identifier = (subscript_expression "piVar7[3]" identifier [ number_literal ])) ;) (expression_statement "*piVar5 = *piVar7;" (assignment_expression "*piVar5 = *piVar7" (pointer_expression "*piVar5" * identifier) = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piVar2[4] = iVar8;" (assignment_expression "piVar2[4] = iVar8" (subscript_expression "piVar2[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar2[5] = iVar6;" (assignment_expression "piVar2[5] = iVar6" (subscript_expression "piVar2[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar2[6] = iVar3;" (assignment_expression "piVar2[6] = iVar3" (subscript_expression "piVar2[6]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" else (compound_statement "{\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" { (expression_statement "iVar3 = param_4[2];" (assignment_expression "iVar3 = param_4[2]" identifier = (subscript_expression "param_4[2]" identifier [ number_literal ])) ;) (expression_statement "piVar2[1] = (int)piVar7;" (assignment_expression "piVar2[1] = (int)piVar7" (subscript_expression "piVar2[1]" identifier [ number_literal ]) = (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar2[3] = iVar3;" (assignment_expression "piVar2[3] = iVar3" (subscript_expression "piVar2[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar5 = piVar7;" (assignment_expression "piVar5 = piVar7" identifier = identifier) ;) }))) (expression_statement "puVar1 = PTR__Hash_bytes_004c22cc;" (assignment_expression "puVar1 = PTR__Hash_bytes_004c22cc" identifier = identifier) ;) (expression_statement "iVar3 = param_4[1];" (assignment_expression "iVar3 = param_4[1]" identifier = (subscript_expression "param_4[1]" identifier [ number_literal ])) ;) (expression_statement "*param_4 = param_4 + 2;" (assignment_expression "*param_4 = param_4 + 2" (pointer_expression "*param_4" * identifier) = (binary_expression "param_4 + 2" identifier + number_literal)) ;) (expression_statement "piVar2[7] = param_4[6];" (assignment_expression "piVar2[7] = param_4[6]" (subscript_expression "piVar2[7]" identifier [ number_literal ]) = (subscript_expression "param_4[6]" identifier [ number_literal ])) ;) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)(param_4 + 2) = 0;" (assignment_expression "*(undefined1 *)(param_4 + 2) = 0" (pointer_expression "*(undefined1 *)(param_4 + 2)" * (cast_expression "(undefined1 *)(param_4 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 2)" ( (binary_expression "param_4 + 2" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar2[2] = iVar3;" (assignment_expression "piVar2[2] = iVar3" (subscript_expression "piVar2[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907);" (assignment_expression "uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907)" identifier = (call_expression "(*(code *)puVar1)(piVar5,iVar3,0xc70f6907)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar5,iVar3,0xc70f6907)" ( identifier , identifier , number_literal )))) ;) (expression_statement "uVar9 = *(uint *)(param_2 + 4);" (assignment_expression "uVar9 = *(uint *)(param_2 + 4)" identifier = (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) ;) (if_statement "if (uVar9 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(uVar9 == 0)" ( (binary_expression "uVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    trap(7);\n  }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "uVar10 = uVar4 % uVar9;" (assignment_expression "uVar10 = uVar4 % uVar9" identifier = (binary_expression "uVar4 % uVar9" identifier % identifier)) ;) (expression_statement "piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4);" (assignment_expression "piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" identifier = (cast_expression "(int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" identifier (argument_list "(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" ( identifier , identifier , (cast_expression "(string *)(piVar2 + 1)" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar2 + 1)" ( (binary_expression "piVar2 + 1" identifier + number_literal) ))) , identifier ))))) ;) (if_statement "if ((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)) {\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }" if (parenthesized_expression "((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0))" ( (binary_expression "(piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)" (parenthesized_expression "(piVar5 != (int *)0x0)" ( (binary_expression "piVar5 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar3 = *piVar5, iVar3 != 0)" ( (comma_expression "iVar3 = *piVar5, iVar3 != 0" (assignment_expression "iVar3 = *piVar5" identifier = (pointer_expression "*piVar5" * identifier)) , (binary_expression "iVar3 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }" { (expression_statement "FUN_0014bbac(piVar2);" (call_expression "FUN_0014bbac(piVar2)" identifier (argument_list "(piVar2)" ( identifier ))) ;) (expression_statement "*param_1 = iVar3;" (assignment_expression "*param_1 = iVar3" (pointer_expression "*param_1" * identifier) = identifier) ;) (expression_statement "*(undefined1 *)(param_1 + 1) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 1) = 0" (pointer_expression "*(undefined1 *)(param_1 + 1)" * (cast_expression "(undefined1 *)(param_1 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) )))) = number_literal) ;) (return_statement "return param_1;" return identifier ;) })) (expression_statement "local_30 = *(undefined4 *)(param_2 + 0x14);" (assignment_expression "local_30 = *(undefined4 *)(param_2 + 0x14)" identifier = (pointer_expression "*(undefined4 *)(param_2 + 0x14)" * (cast_expression "(undefined4 *)(param_2 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x14)" ( (binary_expression "param_2 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "(*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1);" (call_expression "(*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1)" (parenthesized_expression "(*(code *)PTR__M_need_rehash_004c1ac8)" ( (pointer_expression "*(code *)PTR__M_need_rehash_004c1ac8" * (cast_expression "(code *)PTR__M_need_rehash_004c1ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1)" ( identifier , (binary_expression "param_2 + 0x10" identifier + number_literal) , identifier , (pointer_expression "*(undefined4 *)(param_2 + 0xc)" * (cast_expression "(undefined4 *)(param_2 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) , number_literal ))) ;) (if_statement "if (local_38[0] != '\0') {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }" if (parenthesized_expression "(local_38[0] != '\0')" ( (binary_expression "local_38[0] != '\0'" (subscript_expression "local_38[0]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }" { comment (expression_statement "_M_rehash((uint)param_2,local_34);" (call_expression "_M_rehash((uint)param_2,local_34)" identifier (argument_list "((uint)param_2,local_34)" ( (cast_expression "(uint)param_2" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier ))) ;) (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }" if (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" ( (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      trap(7);\n    }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "uVar10 = uVar4 % *(uint *)(param_2 + 4);" (assignment_expression "uVar10 = uVar4 % *(uint *)(param_2 + 4)" identifier = (binary_expression "uVar4 % *(uint *)(param_2 + 4)" identifier % (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))))) ;) })) (expression_statement "iVar3 = *(int *)param_2;" (assignment_expression "iVar3 = *(int *)param_2" identifier = (pointer_expression "*(int *)param_2" * (cast_expression "(int *)param_2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "piVar2[8] = uVar4;" (assignment_expression "piVar2[8] = uVar4" (subscript_expression "piVar2[8]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar5 = (int *)(iVar3 + uVar10 * 4);" (assignment_expression "piVar5 = (int *)(iVar3 + uVar10 * 4)" identifier = (cast_expression "(int *)(iVar3 + uVar10 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + uVar10 * 4)" ( (binary_expression "iVar3 + uVar10 * 4" identifier + (binary_expression "uVar10 * 4" identifier * number_literal)) )))) ;) (if_statement "if ((int *)*piVar5 == (int *)0x0) {\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }\n  else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" if (parenthesized_expression "((int *)*piVar5 == (int *)0x0)" ( (binary_expression "(int *)*piVar5 == (int *)0x0" (cast_expression "(int *)*piVar5" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar5" * identifier)) == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }" { (expression_statement "iVar6 = *(int *)(param_2 + 8);" (assignment_expression "iVar6 = *(int *)(param_2 + 8)" identifier = (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(param_2 + 8) = piVar2;" (assignment_expression "*(int **)(param_2 + 8) = piVar2" (pointer_expression "*(int **)(param_2 + 8)" * (cast_expression "(int **)(param_2 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*piVar2 = iVar6;" (assignment_expression "*piVar2 = iVar6" (pointer_expression "*piVar2" * identifier) = identifier) ;) (if_statement "if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }" { (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }" if (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" ( (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;" (assignment_expression "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2" (pointer_expression "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" * (cast_expression "(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" ( (binary_expression "iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4" identifier + (binary_expression "(*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4" (parenthesized_expression "(*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4))" ( (binary_expression "*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)" (pointer_expression "*(uint *)(iVar6 + 0x20)" * (cast_expression "(uint *)(iVar6 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x20)" ( (binary_expression "iVar6 + 0x20" identifier + number_literal) )))) % (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) )) * number_literal)) )))) = identifier) ;) })) (expression_statement "*piVar5 = (int)(param_2 + 8);" (assignment_expression "*piVar5 = (int)(param_2 + 8)" (pointer_expression "*piVar5" * identifier) = (cast_expression "(int)(param_2 + 8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) ;) }) (else_clause "else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" else (compound_statement "{\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" { (expression_statement "*piVar2 = *(int *)*piVar5;" (assignment_expression "*piVar2 = *(int *)*piVar5" (pointer_expression "*piVar2" * identifier) = (pointer_expression "*(int *)*piVar5" * (cast_expression "(int *)*piVar5" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar5" * identifier)))) ;) (expression_statement "*(int **)*piVar5 = piVar2;" (assignment_expression "*(int **)*piVar5 = piVar2" (pointer_expression "*(int **)*piVar5" * (cast_expression "(int **)*piVar5" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar5" * identifier))) = identifier) ;) }))) (expression_statement "iVar3 = *(int *)(param_2 + 0xc);" (assignment_expression "iVar3 = *(int *)(param_2 + 0xc)" identifier = (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "*param_1 = (int)piVar2;" (assignment_expression "*param_1 = (int)piVar2" (pointer_expression "*param_1" * identifier) = (cast_expression "(int)piVar2" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "*(int *)(param_2 + 0xc) = iVar3 + 1;" (assignment_expression "*(int *)(param_2 + 0xc) = iVar3 + 1" (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar3 + 1" identifier + number_literal)) ;) (expression_statement "*(undefined1 *)(param_1 + 1) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 1) = 1" (pointer_expression "*(undefined1 *)(param_1 + 1)" * (cast_expression "(undefined1 *)(param_1 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) )))) = number_literal) ;) (return_statement "return param_1;" return identifier ;) (ERROR "}" }))
(ERROR "/* DWARF original name: _M_emplace<std::pair<std::__cxx11::basic_string<char,\n   std::char_traits<char>, std::allocator<char> >, gold::Archive*> >\n   DWARF original prototype:\n   pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>\n   _M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>(_Hashtable<const_gold::Symbol*,_std::pair<const_gold::Symbol*_const,_int>,_std::allocator<std::pair<const_gold::Symbol*_const,_int>_>,_std::__detail::_Select1st,_std::equal_to<const_gold::Symbol*>,_std::hash<const_gold::Symbol*>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>\n   * this, true_type param_2,\n   pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>\n   * __args#0) */\n\npair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>\n __thiscall\nstd::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>\n          (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1;\n  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n  *this_00;\n  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n  *p_Var2;\n  undefined4 uVar3;\n  uint __code;\n  __node_base *p_Var4;\n  int iVar5;\n  int iVar6;\n  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n  *p_Var7;\n  __node_type *__n;\n  int *piVar8;\n  undefined4 uVar9;\n  undefined4 uVar10;\n  uint uVar11;\n  _Hash_node_base *p_Var12;\n  __node_type *__n_00;\n  undefined8 uVar13;\n  pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>\n  pVar14;\n  pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>\n  pVar15;\n  pair<bool,_unsigned_int> __do_rehash;\n  __rehash_state local_30 [4];\n  \n  this_00 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n             *)(*(code *)PTR_operator_new_004c13a8)(0x24);\n  p_Var7 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n            *)*param_4;\n  p_Var2 = this_00 + 0xc;\n  *(undefined4 *)this_00 = 0;\n  *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)(this_00 + 4) = p_Var2;\n  if (p_Var7 == (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n                 *)(param_4 + 2)) {\n    uVar10 = *(undefined4 *)(p_Var7 + 4);\n    uVar9 = *(undefined4 *)(p_Var7 + 8);\n    uVar3 = *(undefined4 *)(p_Var7 + 0xc);\n    *(undefined4 *)p_Var2 = *(undefined4 *)p_Var7;\n    *(undefined4 *)(this_00 + 0x10) = uVar10;\n    *(undefined4 *)(this_00 + 0x14) = uVar9;\n    *(undefined4 *)(this_00 + 0x18) = uVar3;\n  }\n  else {\n    uVar3 = param_4[2];\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4) = p_Var7;\n    *(undefined4 *)(this_00 + 0xc) = uVar3;\n    p_Var2 = p_Var7;\n  }\n  puVar1 = PTR__Hash_bytes_004c22cc;\n  uVar3 = param_4[1];\n  *param_4 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n              *)(param_4 + 2);\n  *(undefined4 *)(this_00 + 0x1c) = param_4[6];\n  param_4[1] = 0;\n  *(undefined1 *)(param_4 + 2) = 0;\n  *(undefined4 *)(this_00 + 8) = uVar3;\n  uVar13 = (*(code *)puVar1)(p_Var2,uVar3,0xc70f6907);\n  __code = (uint)((ulonglong)uVar13 >> 0x20);\n  uVar3 = (undefined4)uVar13;\n  uVar11 = *(uint *)(param_2 + 4);\n  if (uVar11 == 0) {\n    trap(7);\n  }\n  __n_00 = (__node_type *)(__code % uVar11);\n  __n = __n_00;\n  p_Var4 = _M_find_before_node(param_2,(size_type)__n_00,(key_type *)(this_00 + 4),__code);\n  if ((p_Var4 != (__node_base *)0x0) &&\n     (p_Var12 = p_Var4->_M_nxt, p_Var12 != (_Hash_node_base *)0x0)) {\n    __detail::\n    _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    ::_M_deallocate_node(this_00,__n);\n    *(_Hash_node_base **)this = p_Var12;\n    this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n               )0x0;\n    pVar14.first.\n    super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)param_2;\n  *(uint *)(this_00 + 0x20) = __code;\n  piVar8 = (int *)(iVar6 + (int)__n_00 * 4);\n  if ((undefined4 *)*piVar8 == (undefined4 *)0x0) {\n    iVar5 = *(int *)(param_2 + 8);\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(param_2 + 8) = this_00;\n    *(int *)this_00 = iVar5;\n    if (iVar5 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;\n    }\n    *piVar8 = (int)(param_2 + 8);\n  }\n  else {\n    *(undefined4 *)this_00 = *(undefined4 *)*piVar8;\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)*piVar8 = this_00;\n  }\n  iVar6 = *(int *)(param_2 + 0xc);\n  *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)this = this_00;\n  *(int *)(param_2 + 0xc) = iVar6 + 1;\n  this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n             )0x1;\n  pVar15.first.\n  super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n  ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n             )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )this;\n  pVar15._4_4_ = 1;\n  return pVar15;\n}\n\n" comment (ERROR "pair<std::" (binary_expression "pair<std" identifier < identifier) : :) (labeled_statement "__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>\n __thiscall" statement_identifier (ERROR "::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold:" : : (binary_expression "_Node_iterator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) :) : (expression_statement "Archive*>,_false,_true>,_bool>\n __thiscall" (comma_expression "Archive*>,_false,_true>,_bool>\n __thiscall" (binary_expression "Archive*>,_false" identifier * (ERROR ">," > ,) identifier) , (binary_expression "_true>,_bool>\n __thiscall" (binary_expression "_true>,_bool" identifier > (ERROR "," ,) identifier) > identifier)) ;)) (expression_statement "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>\n          (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1;" (update_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>\n          (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>\n          (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std::__cxx11::basic_string<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std::pair<std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace<std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n::\n_M_emplace" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std" (binary_expression "std::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_" identifier (ERROR "::\n_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*" : : (binary_expression "_Hashtable<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Archive*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : identifier *) > identifier) > (ERROR "," ,) identifier) (ERROR "::__detail::_Select1st,_std::equal_to" : : identifier : : identifier , identifier : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::hash" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits" : : identifier : : identifier , identifier : : identifier : : identifier , identifier : : identifier : : identifier , identifier : : identifier : : identifier) < true) (ERROR ",_false,_true" , identifier , identifier) > identifier) > (ERROR "::" : :) identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) (ERROR ",_std::char_traits" , identifier : : identifier) < identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::Archive" : : identifier) * (ERROR ">" >) identifier) > (binary_expression "(_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1" (parenthesized_expression "(_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4)" ( (ERROR "_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::" (comma_expression "_Hashtable<std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable<std::__cxx11::basic_string<char" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Archive*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "Archive*>_>,_std" (binary_expression "Archive*>_" identifier * (ERROR ">" >) identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "hash<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) : : identifier : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) : : identifier : : (comma_expression "_Hashtable_traits<true,_false,_true>_>\n           *this,_Hashtable<std" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_false,_true>_>\n           *this,_Hashtable<std" identifier , (comma_expression "_true>_>\n           *this,_Hashtable<std" (binary_expression "_true>_>\n           *this" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*this" * identifier)) , (binary_expression "_Hashtable<std" identifier < identifier)))) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Archive*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "Archive*>_>,_std" (binary_expression "Archive*>_" identifier * (ERROR ">" >) identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "hash<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) : : identifier : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) : : identifier : :) (comma_expression "_Hashtable_traits<true,_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_false,_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4" identifier , (comma_expression "_true>_>\n                 *param_2,undefined4 param_3,undefined4 *param_4" (binary_expression "_true>_>\n                 *param_2" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*param_2" * identifier)) , (comma_expression "undefined4 param_3,undefined4 *param_4" identifier (ERROR "param_3" identifier) , (binary_expression "undefined4 *param_4" identifier * identifier))))) )) (ERROR "{\n  undefined" { identifier) * identifier)) --) ;) (ERROR "_Hashtable_alloc<std::allocator<std::" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) : :) (labeled_statement "__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n  *this_00;" statement_identifier (ERROR "::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold:" : : (binary_expression "_Hash_node<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) :) : (expression_statement "Archive*>,_true>_>_>\n  *this_00;" (binary_expression "Archive*>,_true>_>_>\n  *this_00" (binary_expression "Archive*>,_true>_>_" (binary_expression "Archive*>,_true>_" (binary_expression "Archive*>,_true" identifier * (ERROR ">," > ,) identifier) > identifier) > identifier) > (pointer_expression "*this_00" * identifier)) ;)) (ERROR "_Hashtable_alloc<std::allocator<std::" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) : :) (labeled_statement "__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n  *p_Var2;" statement_identifier (ERROR "::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold:" : : (binary_expression "_Hash_node<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) :) : (expression_statement "Archive*>,_true>_>_>\n  *p_Var2;" (binary_expression "Archive*>,_true>_>_>\n  *p_Var2" (binary_expression "Archive*>,_true>_>_" (binary_expression "Archive*>,_true>_" (binary_expression "Archive*>,_true" identifier * (ERROR ">," > ,) identifier) > identifier) > identifier) > (pointer_expression "*p_Var2" * identifier)) ;)) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "uint __code;" type_identifier identifier ;) (declaration "__node_base *p_Var4;" type_identifier (pointer_declarator "*p_Var4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (ERROR "_Hashtable_alloc<std::allocator<std::" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) : :) (labeled_statement "__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n  *p_Var7;" statement_identifier (ERROR "::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold:" : : (binary_expression "_Hash_node<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) :) : (expression_statement "Archive*>,_true>_>_>\n  *p_Var7;" (binary_expression "Archive*>,_true>_>_>\n  *p_Var7" (binary_expression "Archive*>,_true>_>_" (binary_expression "Archive*>,_true>_" (binary_expression "Archive*>,_true" identifier * (ERROR ">," > ,) identifier) > identifier) > identifier) > (pointer_expression "*p_Var7" * identifier)) ;)) (declaration "__node_type *__n;" type_identifier (pointer_declarator "*__n" * identifier) ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "_Hash_node_base *p_Var12;" type_identifier (pointer_declarator "*p_Var12" * identifier) ;) (declaration "__node_type *__n_00;" type_identifier (pointer_declarator "*__n_00" * identifier) ;) (declaration "undefined8 uVar13;" type_identifier identifier ;) (ERROR "pair<std::" (binary_expression "pair<std" identifier < identifier) : :) (labeled_statement "__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>\n  pVar14;" statement_identifier (ERROR "::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold:" : : (binary_expression "_Node_iterator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) :) : (expression_statement "Archive*>,_false,_true>,_bool>\n  pVar14;" (comma_expression "Archive*>,_false,_true>,_bool>\n  pVar14" (binary_expression "Archive*>,_false" identifier * (ERROR ">," > ,) identifier) , (binary_expression "_true>,_bool>\n  pVar14" (binary_expression "_true>,_bool" identifier > (ERROR "," ,) identifier) > identifier)) ;)) (ERROR "pair<std::" (binary_expression "pair<std" identifier < identifier) : :) (labeled_statement "__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>\n  pVar15;" statement_identifier (ERROR "::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold:" : : (binary_expression "_Node_iterator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) :) : (expression_statement "Archive*>,_false,_true>,_bool>\n  pVar15;" (comma_expression "Archive*>,_false,_true>,_bool>\n  pVar15" (binary_expression "Archive*>,_false" identifier * (ERROR ">," > ,) identifier) , (binary_expression "_true>,_bool>\n  pVar15" (binary_expression "_true>,_bool" identifier > (ERROR "," ,) identifier) > identifier)) ;)) (ERROR "pair<bool,_unsigned_int> __do_rehash" (binary_expression "pair<bool" identifier < identifier) , (binary_expression "_unsigned_int> __do_rehash" identifier > identifier)) (expression_statement ";" ;) (declaration "__rehash_state local_30 [4];" type_identifier (array_declarator "local_30 [4]" identifier [ number_literal ]) ;) (expression_statement "this_00 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n             *)(*(code *)PTR_operator_new_004c13a8)(0x24);" (assignment_expression "this_00 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n             *)(*(code *)PTR_operator_new_004c13a8)(0x24)" identifier = (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n             *)(*(code *)PTR_operator_new_004c13a8)(0x24)" (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n             *)(*(code *)PTR_operator_new_004c13a8)" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n             *)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n             *" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n             *" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "*" * identifier))) )) (argument_list "(*(code *)PTR_operator_new_004c13a8)" ( (pointer_expression "*(code *)PTR_operator_new_004c13a8" * (cast_expression "(code *)PTR_operator_new_004c13a8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) (argument_list "(0x24)" ( number_literal )))) ;) (expression_statement "p_Var7 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n            *)*param_4;" (assignment_expression "p_Var7 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n            *)*param_4" identifier = (binary_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n            *)*param_4" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n            *)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n            *" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n            *" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "*" * identifier))) )) * identifier)) ;) (expression_statement "p_Var2 = this_00 + 0xc;" (assignment_expression "p_Var2 = this_00 + 0xc" identifier = (binary_expression "this_00 + 0xc" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)this_00 = 0;" (assignment_expression "*(undefined4 *)this_00 = 0" (pointer_expression "*(undefined4 *)this_00" * (cast_expression "(undefined4 *)this_00" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)(this_00 + 4) = p_Var2;" (assignment_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)(this_00 + 4) = p_Var2" (pointer_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)(this_00 + 4)" * (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)(this_00 + 4)" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n    **" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n    **" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "(this_00 + 4)" ( (binary_expression "this_00 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (p_Var7 == (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n                 *)(param_4 + 2)) {\n    uVar10 = *(undefined4 *)(p_Var7 + 4);\n    uVar9 = *(undefined4 *)(p_Var7 + 8);\n    uVar3 = *(undefined4 *)(p_Var7 + 0xc);\n    *(undefined4 *)p_Var2 = *(undefined4 *)p_Var7;\n    *(undefined4 *)(this_00 + 0x10) = uVar10;\n    *(undefined4 *)(this_00 + 0x14) = uVar9;\n    *(undefined4 *)(this_00 + 0x18) = uVar3;\n  }\n  else {\n    uVar3 = param_4[2];\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4) = p_Var7;\n    *(undefined4 *)(this_00 + 0xc) = uVar3;\n    p_Var2 = p_Var7;\n  }" if (parenthesized_expression "(p_Var7 == (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n                 *)(param_4 + 2))" ( (binary_expression "p_Var7 == (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n                 *)(param_4 + 2)" identifier == (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n                 *)(param_4 + 2)" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n                 *)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n                 *" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n                 *" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "*" * identifier))) )) (argument_list "(param_4 + 2)" ( (binary_expression "param_4 + 2" identifier + number_literal) )))) )) (compound_statement "{\n    uVar10 = *(undefined4 *)(p_Var7 + 4);\n    uVar9 = *(undefined4 *)(p_Var7 + 8);\n    uVar3 = *(undefined4 *)(p_Var7 + 0xc);\n    *(undefined4 *)p_Var2 = *(undefined4 *)p_Var7;\n    *(undefined4 *)(this_00 + 0x10) = uVar10;\n    *(undefined4 *)(this_00 + 0x14) = uVar9;\n    *(undefined4 *)(this_00 + 0x18) = uVar3;\n  }" { (expression_statement "uVar10 = *(undefined4 *)(p_Var7 + 4);" (assignment_expression "uVar10 = *(undefined4 *)(p_Var7 + 4)" identifier = (pointer_expression "*(undefined4 *)(p_Var7 + 4)" * (cast_expression "(undefined4 *)(p_Var7 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(p_Var7 + 4)" ( (binary_expression "p_Var7 + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *(undefined4 *)(p_Var7 + 8);" (assignment_expression "uVar9 = *(undefined4 *)(p_Var7 + 8)" identifier = (pointer_expression "*(undefined4 *)(p_Var7 + 8)" * (cast_expression "(undefined4 *)(p_Var7 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(p_Var7 + 8)" ( (binary_expression "p_Var7 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(undefined4 *)(p_Var7 + 0xc);" (assignment_expression "uVar3 = *(undefined4 *)(p_Var7 + 0xc)" identifier = (pointer_expression "*(undefined4 *)(p_Var7 + 0xc)" * (cast_expression "(undefined4 *)(p_Var7 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(p_Var7 + 0xc)" ( (binary_expression "p_Var7 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)p_Var2 = *(undefined4 *)p_Var7;" (assignment_expression "*(undefined4 *)p_Var2 = *(undefined4 *)p_Var7" (pointer_expression "*(undefined4 *)p_Var2" * (cast_expression "(undefined4 *)p_Var2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (pointer_expression "*(undefined4 *)p_Var7" * (cast_expression "(undefined4 *)p_Var7" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "*(undefined4 *)(this_00 + 0x10) = uVar10;" (assignment_expression "*(undefined4 *)(this_00 + 0x10) = uVar10" (pointer_expression "*(undefined4 *)(this_00 + 0x10)" * (cast_expression "(undefined4 *)(this_00 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_00 + 0x10)" ( (binary_expression "this_00 + 0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(this_00 + 0x14) = uVar9;" (assignment_expression "*(undefined4 *)(this_00 + 0x14) = uVar9" (pointer_expression "*(undefined4 *)(this_00 + 0x14)" * (cast_expression "(undefined4 *)(this_00 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_00 + 0x14)" ( (binary_expression "this_00 + 0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(this_00 + 0x18) = uVar3;" (assignment_expression "*(undefined4 *)(this_00 + 0x18) = uVar3" (pointer_expression "*(undefined4 *)(this_00 + 0x18)" * (cast_expression "(undefined4 *)(this_00 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_00 + 0x18)" ( (binary_expression "this_00 + 0x18" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n    uVar3 = param_4[2];\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4) = p_Var7;\n    *(undefined4 *)(this_00 + 0xc) = uVar3;\n    p_Var2 = p_Var7;\n  }" else (compound_statement "{\n    uVar3 = param_4[2];\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4) = p_Var7;\n    *(undefined4 *)(this_00 + 0xc) = uVar3;\n    p_Var2 = p_Var7;\n  }" { (expression_statement "uVar3 = param_4[2];" (assignment_expression "uVar3 = param_4[2]" identifier = (subscript_expression "param_4[2]" identifier [ number_literal ])) ;) (expression_statement "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4) = p_Var7;" (assignment_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4) = p_Var7" (pointer_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4)" * (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(this_00 + 4)" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n      **" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n      **" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "(this_00 + 4)" ( (binary_expression "this_00 + 4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(this_00 + 0xc) = uVar3;" (assignment_expression "*(undefined4 *)(this_00 + 0xc) = uVar3" (pointer_expression "*(undefined4 *)(this_00 + 0xc)" * (cast_expression "(undefined4 *)(this_00 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_00 + 0xc)" ( (binary_expression "this_00 + 0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "p_Var2 = p_Var7;" (assignment_expression "p_Var2 = p_Var7" identifier = identifier) ;) }))) (expression_statement "puVar1 = PTR__Hash_bytes_004c22cc;" (assignment_expression "puVar1 = PTR__Hash_bytes_004c22cc" identifier = identifier) ;) (expression_statement "uVar3 = param_4[1];" (assignment_expression "uVar3 = param_4[1]" identifier = (subscript_expression "param_4[1]" identifier [ number_literal ])) ;) (expression_statement "*param_4 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n              *)(param_4 + 2);" (assignment_expression "*param_4 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n              *)(param_4 + 2)" (pointer_expression "*param_4" * identifier) = (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n              *)(param_4 + 2)" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n              *)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n              *" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n              *" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "*" * identifier))) )) (argument_list "(param_4 + 2)" ( (binary_expression "param_4 + 2" identifier + number_literal) )))) ;) (expression_statement "*(undefined4 *)(this_00 + 0x1c) = param_4[6];" (assignment_expression "*(undefined4 *)(this_00 + 0x1c) = param_4[6]" (pointer_expression "*(undefined4 *)(this_00 + 0x1c)" * (cast_expression "(undefined4 *)(this_00 + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_00 + 0x1c)" ( (binary_expression "this_00 + 0x1c" identifier + number_literal) )))) = (subscript_expression "param_4[6]" identifier [ number_literal ])) ;) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)(param_4 + 2) = 0;" (assignment_expression "*(undefined1 *)(param_4 + 2) = 0" (pointer_expression "*(undefined1 *)(param_4 + 2)" * (cast_expression "(undefined1 *)(param_4 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 2)" ( (binary_expression "param_4 + 2" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(this_00 + 8) = uVar3;" (assignment_expression "*(undefined4 *)(this_00 + 8) = uVar3" (pointer_expression "*(undefined4 *)(this_00 + 8)" * (cast_expression "(undefined4 *)(this_00 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_00 + 8)" ( (binary_expression "this_00 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar13 = (*(code *)puVar1)(p_Var2,uVar3,0xc70f6907);" (assignment_expression "uVar13 = (*(code *)puVar1)(p_Var2,uVar3,0xc70f6907)" identifier = (call_expression "(*(code *)puVar1)(p_Var2,uVar3,0xc70f6907)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(p_Var2,uVar3,0xc70f6907)" ( identifier , identifier , number_literal )))) ;) (expression_statement "__code = (uint)((ulonglong)uVar13 >> 0x20);" (assignment_expression "__code = (uint)((ulonglong)uVar13 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)uVar13 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)uVar13 >> 0x20)" ( (binary_expression "(ulonglong)uVar13 >> 0x20" (cast_expression "(ulonglong)uVar13" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar3 = (undefined4)uVar13;" (assignment_expression "uVar3 = (undefined4)uVar13" identifier = (cast_expression "(undefined4)uVar13" ( (type_descriptor "undefined4" type_identifier) ) identifier)) ;) (expression_statement "uVar11 = *(uint *)(param_2 + 4);" (assignment_expression "uVar11 = *(uint *)(param_2 + 4)" identifier = (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) ;) (if_statement "if (uVar11 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(uVar11 == 0)" ( (binary_expression "uVar11 == 0" identifier == number_literal) )) (compound_statement "{\n    trap(7);\n  }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "__n_00 = (__node_type *)(__code % uVar11);" (assignment_expression "__n_00 = (__node_type *)(__code % uVar11)" identifier = (cast_expression "(__node_type *)(__code % uVar11)" ( (type_descriptor "__node_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(__code % uVar11)" ( (binary_expression "__code % uVar11" identifier % identifier) )))) ;) (expression_statement "__n = __n_00;" (assignment_expression "__n = __n_00" identifier = identifier) ;) (expression_statement "p_Var4 = _M_find_before_node(param_2,(size_type)__n_00,(key_type *)(this_00 + 4),__code);" (assignment_expression "p_Var4 = _M_find_before_node(param_2,(size_type)__n_00,(key_type *)(this_00 + 4),__code)" identifier = (call_expression "_M_find_before_node(param_2,(size_type)__n_00,(key_type *)(this_00 + 4),__code)" identifier (argument_list "(param_2,(size_type)__n_00,(key_type *)(this_00 + 4),__code)" ( identifier , (cast_expression "(size_type)__n_00" ( (type_descriptor "size_type" type_identifier) ) identifier) , (cast_expression "(key_type *)(this_00 + 4)" ( (type_descriptor "key_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this_00 + 4)" ( (binary_expression "this_00 + 4" identifier + number_literal) ))) , identifier )))) ;) if (parenthesized_expression "((p_Var4 != (__node_base *)0x0) &&\n     (p_Var12 = p_Var4->_M_nxt, p_Var12 != (_Hash_node_base *)0x0))" ( (binary_expression "(p_Var4 != (__node_base *)0x0) &&\n     (p_Var12 = p_Var4->_M_nxt, p_Var12 != (_Hash_node_base *)0x0)" (parenthesized_expression "(p_Var4 != (__node_base *)0x0)" ( (binary_expression "p_Var4 != (__node_base *)0x0" identifier != (cast_expression "(__node_base *)0x0" ( (type_descriptor "__node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(p_Var12 = p_Var4->_M_nxt, p_Var12 != (_Hash_node_base *)0x0)" ( (comma_expression "p_Var12 = p_Var4->_M_nxt, p_Var12 != (_Hash_node_base *)0x0" (assignment_expression "p_Var12 = p_Var4->_M_nxt" identifier = (field_expression "p_Var4->_M_nxt" identifier -> field_identifier)) , (binary_expression "p_Var12 != (_Hash_node_base *)0x0" identifier != (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) { (labeled_statement "__detail::\n    _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    ::_M_deallocate_node(this_00,__n);" statement_identifier (ERROR "::\n    _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold:" : : (binary_expression "_Hashtable_alloc<std" identifier < identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold" identifier (ERROR "::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>" : : (binary_expression "_Hash_node<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) >) , identifier) :) : (expression_statement "Archive*>,_true>_>_>\n    ::_M_deallocate_node(this_00,__n);" (binary_expression "Archive*>,_true>_>_>\n    ::_M_deallocate_node(this_00,__n)" (binary_expression "Archive*>,_true>_>_" (binary_expression "Archive*>,_true>_" (binary_expression "Archive*>,_true" identifier * (ERROR ">," > ,) identifier) > identifier) > identifier) > (ERROR "::" : :) (call_expression "_M_deallocate_node(this_00,__n)" identifier (argument_list "(this_00,__n)" ( identifier , identifier )))) ;)) (expression_statement "*(_Hash_node_base **)this = p_Var12;" (assignment_expression "*(_Hash_node_base **)this = p_Var12" (pointer_expression "*(_Hash_node_base **)this" * (cast_expression "(_Hash_node_base **)this" ( (type_descriptor "_Hash_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) = identifier) ;) (expression_statement "this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n               )0x0;\n    pVar14.first.\n    super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)param_2;\n  *(uint *)(this_00 + 0x20) = __code;" (assignment_expression "this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n               )0x0;\n    pVar14.first.\n    super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)param_2;\n  *(uint *)(this_00 + 0x20) = __code" (subscript_expression "this[4]" identifier [ number_literal ]) = (parenthesized_expression "(_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n               )0x0;\n    pVar14.first.\n    super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)param_2;\n  *(uint *)(this_00 + 0x20) = __code" ( (ERROR "_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n               )0x0;\n    pVar14.first.\n    super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable<std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable<std::__cxx11::basic_string<char" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Archive*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "Archive*>_>,_std" (binary_expression "Archive*>_" identifier * (ERROR ">" >) identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "hash<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) : : identifier : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) : : identifier : : (comma_expression "_Hashtable_traits<true,_false,_true>_>\n               )0x0" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_false,_true>_>\n               )0x0" identifier , (binary_expression "_true>_>\n               )0x0" (binary_expression "_true>_" identifier > identifier) > (ERROR ")" )) number_literal))) ; (binary_expression "pVar14.first.\n    super__Node_iterator_base<std" (field_expression "pVar14.first.\n    super__Node_iterator_base" (field_expression "pVar14.first" identifier . field_identifier) . field_identifier) < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>\n    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)param_2;\n  *(uint *)(this_00 + 0x20) = __code" identifier (ERROR "*>" * >) , (assignment_expression "_true>\n    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)param_2;\n  *(uint *)(this_00 + 0x20) = __code" (field_expression "_true>\n    ._M_cur" identifier (ERROR ">" >) . field_identifier) = (binary_expression "(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)param_2;\n  *(uint *)(this_00 + 0x20) = __code" (call_expression "(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)" (parenthesized_expression "(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n               )" ( (ERROR "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Node_iterator_base<std::pair<const_std" (binary_expression "_Node_iterator_base<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true" identifier (ERROR "*>" * >) , identifier) (ERROR ">" >) )) (argument_list "(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false) {\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }\n  iVar6 = *(int *)" ( (binary_expression "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Node_iterator_base<std::pair<const_std" (binary_expression "_Node_iterator_base<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , (ERROR "_std::" identifier : :) (binary_expression "char_traits<char" identifier < identifier) (ERROR ">" >) , (ERROR "_std::" identifier : :) (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) (ERROR ">" >) , (ERROR "_gold::Archive*>,_true>\n                 )this;\n    pVar14._4_4_ = uVar3;\n    return pVar14;\n  }\n  local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false)" identifier : : (binary_expression "Archive*>,_true>\n                 )this" (binary_expression "Archive*>,_true" identifier * (ERROR ">," > ,) identifier) > (ERROR ")" )) identifier) ; (assignment_expression "pVar14._4_4_ = uVar3" (field_expression "pVar14._4_4_" identifier . field_identifier) = identifier) ; return identifier ; } (call_expression "local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);\n  if (__do_rehash.first != false)" (call_expression "local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1)" (call_expression "local_30[0] = *(__rehash_state *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)" (assignment_expression "local_30[0] = *(__rehash_state *)(param_2 + 0x14)" (subscript_expression "local_30[0]" identifier [ number_literal ]) = (pointer_expression "*(__rehash_state *)(param_2 + 0x14)" * (cast_expression "(__rehash_state *)(param_2 + 0x14)" ( (type_descriptor "__rehash_state *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x14)" ( (binary_expression "param_2 + 0x14" identifier + number_literal) ))))) (ERROR ";" ;) (argument_list "(*(code *)PTR__M_need_rehash_004c1ac8)" ( (pointer_expression "*(code *)PTR__M_need_rehash_004c1ac8" * (cast_expression "(code *)PTR__M_need_rehash_004c1ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) (argument_list "(&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1)" ( (pointer_expression "&__do_rehash" & identifier) , (binary_expression "param_2 + 0x10" identifier + number_literal) , identifier , (pointer_expression "*(undefined4 *)(param_2 + 0xc)" * (cast_expression "(undefined4 *)(param_2 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) , number_literal ))) (ERROR ";\n  if" ; if) (argument_list "(__do_rehash.first != false)" ( (binary_expression "__do_rehash.first != false" (field_expression "__do_rehash.first" identifier . field_identifier) != false) )))) (compound_statement "{\n                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */\n    _M_rehash(param_2,__do_rehash.second,local_30);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));\n  }" { comment (expression_statement "_M_rehash(param_2,__do_rehash.second,local_30);" (call_expression "_M_rehash(param_2,__do_rehash.second,local_30)" identifier (argument_list "(param_2,__do_rehash.second,local_30)" ( identifier , (field_expression "__do_rehash.second" identifier . field_identifier) , identifier ))) ;) (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }" if (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" ( (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      trap(7);\n    }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "__n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));" (assignment_expression "__n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4))" identifier = (cast_expression "(__node_type *)(__code % *(uint *)(param_2 + 4))" ( (type_descriptor "__node_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(__code % *(uint *)(param_2 + 4))" ( (binary_expression "__code % *(uint *)(param_2 + 4)" identifier % (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) )))) ;) }) (ERROR "iVar6 = *(int *" identifier = * ( primitive_type *) ))) (ERROR "param_2;" identifier ;) * (cast_expression "(uint *)(this_00 + 0x20) = __code" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "(this_00 + 0x20) = __code" (parenthesized_expression "(this_00 + 0x20)" ( (binary_expression "this_00 + 0x20" identifier + number_literal) )) = identifier))))) ))) ;) (expression_statement "piVar8 = (int *)(iVar6 + (int)__n_00 * 4);" (assignment_expression "piVar8 = (int *)(iVar6 + (int)__n_00 * 4)" identifier = (cast_expression "(int *)(iVar6 + (int)__n_00 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + (int)__n_00 * 4)" ( (binary_expression "iVar6 + (int)__n_00 * 4" identifier + (binary_expression "(int)__n_00 * 4" (cast_expression "(int)__n_00" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (if_statement "if ((undefined4 *)*piVar8 == (undefined4 *)0x0) {\n    iVar5 = *(int *)(param_2 + 8);\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(param_2 + 8) = this_00;\n    *(int *)this_00 = iVar5;\n    if (iVar5 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;\n    }\n    *piVar8 = (int)(param_2 + 8);\n  }\n  else {\n    *(undefined4 *)this_00 = *(undefined4 *)*piVar8;\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)*piVar8 = this_00;\n  }" if (parenthesized_expression "((undefined4 *)*piVar8 == (undefined4 *)0x0)" ( (binary_expression "(undefined4 *)*piVar8 == (undefined4 *)0x0" (cast_expression "(undefined4 *)*piVar8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar8" * identifier)) == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar5 = *(int *)(param_2 + 8);\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(param_2 + 8) = this_00;\n    *(int *)this_00 = iVar5;\n    if (iVar5 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;\n    }\n    *piVar8 = (int)(param_2 + 8);\n  }" { (expression_statement "iVar5 = *(int *)(param_2 + 8);" (assignment_expression "iVar5 = *(int *)(param_2 + 8)" identifier = (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(param_2 + 8) = this_00;" (assignment_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(param_2 + 8) = this_00" (pointer_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(param_2 + 8)" * (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)(param_2 + 8)" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n      **" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n      **" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)this_00 = iVar5;" (assignment_expression "*(int *)this_00 = iVar5" (pointer_expression "*(int *)this_00" * (cast_expression "(int *)this_00" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (if_statement "if (iVar5 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;\n    }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;\n    }" { (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }" if (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" ( (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;" (assignment_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00" (pointer_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4)" * (call_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4)" (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n        **)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n        **" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n        **" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4)" ( (binary_expression "iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4" identifier + (binary_expression "(*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4" (parenthesized_expression "(*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4))" ( (binary_expression "*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)" (pointer_expression "*(uint *)(iVar5 + 0x20)" * (cast_expression "(uint *)(iVar5 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + 0x20)" ( (binary_expression "iVar5 + 0x20" identifier + number_literal) )))) % (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) )) * number_literal)) )))) = identifier) ;) })) (expression_statement "*piVar8 = (int)(param_2 + 8);" (assignment_expression "*piVar8 = (int)(param_2 + 8)" (pointer_expression "*piVar8" * identifier) = (cast_expression "(int)(param_2 + 8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) ;) }) (else_clause "else {\n    *(undefined4 *)this_00 = *(undefined4 *)*piVar8;\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)*piVar8 = this_00;\n  }" else (compound_statement "{\n    *(undefined4 *)this_00 = *(undefined4 *)*piVar8;\n    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)*piVar8 = this_00;\n  }" { (expression_statement "*(undefined4 *)this_00 = *(undefined4 *)*piVar8;" (assignment_expression "*(undefined4 *)this_00 = *(undefined4 *)*piVar8" (pointer_expression "*(undefined4 *)this_00" * (cast_expression "(undefined4 *)this_00" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (pointer_expression "*(undefined4 *)*piVar8" * (cast_expression "(undefined4 *)*piVar8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar8" * identifier)))) ;) (expression_statement "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)*piVar8 = this_00;" (binary_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)*piVar8 = this_00" (pointer_expression "*(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)" * (parenthesized_expression "(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n      **)" ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true>_>_>\n      **" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n      **" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier)))) ))) * (assignment_expression "piVar8 = this_00" identifier = identifier)) ;) }))) (expression_statement "iVar6 = *(int *)(param_2 + 0xc);" (assignment_expression "iVar6 = *(int *)(param_2 + 0xc)" identifier = (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) ;) * ( (ERROR "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>\n    **)this = this_00;\n  *(int *)(param_2 + 0xc) = iVar6 + 1;" (comma_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std" (binary_expression "_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std" (binary_expression "_Hashtable_alloc<std::allocator<std" (binary_expression "_Hashtable_alloc<std" identifier < identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::__detail::_Hash_node" : : identifier : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Archive*>,_true>_>_>\n    **)this = this_00" identifier (ERROR "*>" * >) , (binary_expression "_true>_>_>\n    **)this = this_00" (binary_expression "_true>_>_" (binary_expression "_true>_" identifier > identifier) > identifier) > (assignment_expression "**)this = this_00" (pointer_expression "**)this" * (pointer_expression "*)this" * (ERROR ")" )) identifier)) = identifier))) ; (assignment_expression "*(int *)(param_2 + 0xc) = iVar6 + 1" (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) (subscript_expression "this[4]" identifier [ number_literal ]) = ( (ERROR "_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n             )0x1;\n  pVar15.first.\n  super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Hashtable<std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable<std::__cxx11::basic_string<char" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Archive*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "Archive*>_>,_std" (binary_expression "Archive*>_" identifier * (ERROR ">" >) identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "hash<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) : : identifier : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) : : identifier : : (comma_expression "_Hashtable_traits<true,_false,_true>_>\n             )0x1" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_false,_true>_>\n             )0x1" identifier , (binary_expression "_true>_>\n             )0x1" (binary_expression "_true>_" identifier > identifier) > (ERROR ")" )) number_literal))) ; (binary_expression "pVar15.first.\n  super__Node_iterator_base<std" (field_expression "pVar15.first.\n  super__Node_iterator_base" (field_expression "pVar15.first" identifier . field_identifier) . field_identifier) < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (binary_expression "Archive*>,_true" identifier * (ERROR ">," > ,) identifier) > (ERROR "." .) identifier = (parenthesized_expression "(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>\n             )" ( (ERROR "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::" (comma_expression "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std" (binary_expression "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Node_iterator_base<std::pair<const_std" (binary_expression "_Node_iterator_base<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_gold" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : :) (comma_expression "Archive*>,_true" identifier (ERROR "*>" * >) , identifier) (ERROR ">" >) )) ( (binary_expression "_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char" (binary_expression "_Node_iterator_base<std::pair<const_std" (binary_expression "_Node_iterator_base<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , (ERROR "_std::" identifier : :) (binary_expression "char_traits<char" identifier < identifier) (ERROR ">" >) , (ERROR "_std::" identifier : :) (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) (ERROR ">" >) , (ERROR "_gold::Archive*>,_true>\n               )this;\n  pVar15._4_4_ = 1;\n  return" identifier : : (binary_expression "Archive*>,_true>\n               )this" (binary_expression "Archive*>,_true" identifier * (ERROR ">," > ,) identifier) > (ERROR ")" )) identifier) ; (assignment_expression "pVar15._4_4_ = 1" (field_expression "pVar15._4_4_" identifier . field_identifier) = number_literal) ; return) identifier ; })
(translation_unit "int * std::\n      _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n      ::_M_emplace<std::pair<std::string,gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1;\n  int *piVar2;\n  int iVar3;\n  uint uVar4;\n  int *piVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  uint uVar10;\n  char local_38 [4];\n  uint *local_34;\n  undefined4 local_30;\n  \n  piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24);\n  piVar7 = (int *)*param_4;\n  piVar5 = piVar2 + 3;\n  *piVar2 = 0;\n  piVar2[1] = (int)piVar5;\n  if (piVar7 == param_4 + 2) {\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }\n  else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }\n  puVar1 = PTR__Hash_bytes_004c22cc;\n  iVar3 = param_4[1];\n  *param_4 = param_4 + 2;\n  piVar2[7] = param_4[6];\n  param_4[1] = 0;\n  *(undefined1 *)(param_4 + 2) = 0;\n  piVar2[2] = iVar3;\n  uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907);\n  uVar9 = *(uint *)(param_2 + 4);\n  if (uVar9 == 0) {\n    trap(7);\n  }\n  uVar10 = uVar4 % uVar9;\n  piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4);\n  if ((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)) {\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }\n  local_30 = *(undefined4 *)(param_2 + 0x14);\n  (*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1);\n  if (local_38[0] != '\0') {\n                    \n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }\n  iVar3 = *(int *)param_2;\n  piVar2[8] = uVar4;\n  piVar5 = (int *)(iVar3 + uVar10 * 4);\n  if ((int *)*piVar5 == (int *)0x0) {\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }\n  else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }\n  iVar3 = *(int *)(param_2 + 0xc);\n  *param_1 = (int)piVar2;\n  *(int *)(param_2 + 0xc) = iVar3 + 1;\n  *(undefined1 *)(param_1 + 1) = 1;\n  return param_1;\n}\n\n" (declaration "int * std::\n      _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n      ::_M_emplace<std::pair<std::string,gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1;" primitive_type (pointer_declarator "* std::\n      _Hashtable<std::string" * (ERROR "std::\n      _Hashtable<std::" identifier : : identifier < identifier : :) identifier) , (ERROR "std::pair<std::" identifier : : identifier < identifier : :) identifier , (ERROR "gold::" identifier : :) identifier (ERROR "*>" * >) , (ERROR "std::allocator<std::pair<std::" identifier : : identifier < identifier : : identifier < identifier : :) identifier , (ERROR "gold::" identifier : :) identifier (ERROR "*>>" * >>) , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::equal_to<std::" identifier : : identifier < identifier : :) identifier (ERROR ">" >) , (ERROR "std::hash<std::" identifier : : identifier < identifier : :) identifier (ERROR ">" >) , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::__detail::" identifier : : identifier : :) identifier , (ERROR "std::__detail::" identifier : : identifier : :) identifier (ERROR "<true" < true) , identifier , (ERROR "true>>\n      ::_M_emplace<std::pair<std::" identifier >> : : identifier < identifier : : identifier < identifier : :) identifier , (ERROR "gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined" identifier : : (function_declarator "Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)" identifier (ERROR "*>>" * >>) (parameter_list "(int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "_Hashtable<std::string" type_identifier (ERROR "<std::" < identifier : :) identifier) , (parameter_declaration "std::pair<std::string_const" type_identifier (ERROR "::pair<std::" : : identifier < identifier : :) identifier) , (parameter_declaration "gold::Archive" type_identifier (ERROR "::" : :) identifier) (ERROR "*>" * >) , (parameter_declaration "std::allocator<std::pair<std::string_const" type_identifier (ERROR "::allocator<std::pair<std::" : : identifier < identifier : : identifier < identifier : :) identifier) , (parameter_declaration "gold::Archive" type_identifier (ERROR "::" : :) identifier) (ERROR "*>>" * >>) , (parameter_declaration "std::__detail::_Select1st" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::equal_to<std::string" type_identifier (ERROR "::equal_to<std::" : : identifier < identifier : :) identifier) (ERROR ">" >) , (parameter_declaration "std::hash<std::string" type_identifier (ERROR "::hash<std::" : : identifier < identifier : :) identifier) (ERROR ">" >) , (parameter_declaration "std::__detail::_Mod_range_hashing" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::__detail::_Default_ranged_hash" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::__detail::_Prime_rehash_policy" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) , (parameter_declaration "std::__detail::_Hashtable_traits" type_identifier (ERROR "::__detail::" : : identifier : :) identifier) (ERROR "<true" < true) , (parameter_declaration "false" type_identifier) , (parameter_declaration "true>>\n                *param_2" type_identifier (ERROR ">>" >>) (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) ))) { identifier) (pointer_declarator "*puVar1" * identifier) ;) (declaration "int *piVar2;" primitive_type (pointer_declarator "*piVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "char local_38 [4];" primitive_type (array_declarator "local_38 [4]" identifier [ number_literal ]) ;) (declaration "uint *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (expression_statement "piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24);" (assignment_expression "piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24)" identifier = (cast_expression "(int *)(*(code *)PTR_operator_new_004c13a8)(0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_operator_new_004c13a8)(0x24)" (parenthesized_expression "(*(code *)PTR_operator_new_004c13a8)" ( (pointer_expression "*(code *)PTR_operator_new_004c13a8" * (cast_expression "(code *)PTR_operator_new_004c13a8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "piVar7 = (int *)*param_4;" (assignment_expression "piVar7 = (int *)*param_4" identifier = (cast_expression "(int *)*param_4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_4" * identifier))) ;) (expression_statement "piVar5 = piVar2 + 3;" (assignment_expression "piVar5 = piVar2 + 3" identifier = (binary_expression "piVar2 + 3" identifier + number_literal)) ;) (expression_statement "*piVar2 = 0;" (assignment_expression "*piVar2 = 0" (pointer_expression "*piVar2" * identifier) = number_literal) ;) (expression_statement "piVar2[1] = (int)piVar5;" (assignment_expression "piVar2[1] = (int)piVar5" (subscript_expression "piVar2[1]" identifier [ number_literal ]) = (cast_expression "(int)piVar5" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (piVar7 == param_4 + 2) {\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }\n  else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" if (parenthesized_expression "(piVar7 == param_4 + 2)" ( (binary_expression "piVar7 == param_4 + 2" identifier == (binary_expression "param_4 + 2" identifier + number_literal)) )) (compound_statement "{\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }" { (expression_statement "iVar8 = piVar7[1];" (assignment_expression "iVar8 = piVar7[1]" identifier = (subscript_expression "piVar7[1]" identifier [ number_literal ])) ;) (expression_statement "iVar6 = piVar7[2];" (assignment_expression "iVar6 = piVar7[2]" identifier = (subscript_expression "piVar7[2]" identifier [ number_literal ])) ;) (expression_statement "iVar3 = piVar7[3];" (assignment_expression "iVar3 = piVar7[3]" identifier = (subscript_expression "piVar7[3]" identifier [ number_literal ])) ;) (expression_statement "*piVar5 = *piVar7;" (assignment_expression "*piVar5 = *piVar7" (pointer_expression "*piVar5" * identifier) = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piVar2[4] = iVar8;" (assignment_expression "piVar2[4] = iVar8" (subscript_expression "piVar2[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar2[5] = iVar6;" (assignment_expression "piVar2[5] = iVar6" (subscript_expression "piVar2[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar2[6] = iVar3;" (assignment_expression "piVar2[6] = iVar3" (subscript_expression "piVar2[6]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" else (compound_statement "{\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" { (expression_statement "iVar3 = param_4[2];" (assignment_expression "iVar3 = param_4[2]" identifier = (subscript_expression "param_4[2]" identifier [ number_literal ])) ;) (expression_statement "piVar2[1] = (int)piVar7;" (assignment_expression "piVar2[1] = (int)piVar7" (subscript_expression "piVar2[1]" identifier [ number_literal ]) = (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar2[3] = iVar3;" (assignment_expression "piVar2[3] = iVar3" (subscript_expression "piVar2[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar5 = piVar7;" (assignment_expression "piVar5 = piVar7" identifier = identifier) ;) }))) (expression_statement "puVar1 = PTR__Hash_bytes_004c22cc;" (assignment_expression "puVar1 = PTR__Hash_bytes_004c22cc" identifier = identifier) ;) (expression_statement "iVar3 = param_4[1];" (assignment_expression "iVar3 = param_4[1]" identifier = (subscript_expression "param_4[1]" identifier [ number_literal ])) ;) (expression_statement "*param_4 = param_4 + 2;" (assignment_expression "*param_4 = param_4 + 2" (pointer_expression "*param_4" * identifier) = (binary_expression "param_4 + 2" identifier + number_literal)) ;) (expression_statement "piVar2[7] = param_4[6];" (assignment_expression "piVar2[7] = param_4[6]" (subscript_expression "piVar2[7]" identifier [ number_literal ]) = (subscript_expression "param_4[6]" identifier [ number_literal ])) ;) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)(param_4 + 2) = 0;" (assignment_expression "*(undefined1 *)(param_4 + 2) = 0" (pointer_expression "*(undefined1 *)(param_4 + 2)" * (cast_expression "(undefined1 *)(param_4 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 2)" ( (binary_expression "param_4 + 2" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar2[2] = iVar3;" (assignment_expression "piVar2[2] = iVar3" (subscript_expression "piVar2[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907);" (assignment_expression "uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907)" identifier = (call_expression "(*(code *)puVar1)(piVar5,iVar3,0xc70f6907)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar5,iVar3,0xc70f6907)" ( identifier , identifier , number_literal )))) ;) (expression_statement "uVar9 = *(uint *)(param_2 + 4);" (assignment_expression "uVar9 = *(uint *)(param_2 + 4)" identifier = (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) ;) (if_statement "if (uVar9 == 0) {\n    trap(7);\n  }" if (parenthesized_expression "(uVar9 == 0)" ( (binary_expression "uVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    trap(7);\n  }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "uVar10 = uVar4 % uVar9;" (assignment_expression "uVar10 = uVar4 % uVar9" identifier = (binary_expression "uVar4 % uVar9" identifier % identifier)) ;) (expression_statement "piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4);" (assignment_expression "piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" identifier = (cast_expression "(int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" identifier (argument_list "(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" ( identifier , identifier , (cast_expression "(string *)(piVar2 + 1)" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar2 + 1)" ( (binary_expression "piVar2 + 1" identifier + number_literal) ))) , identifier ))))) ;) (if_statement "if ((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)) {\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }" if (parenthesized_expression "((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0))" ( (binary_expression "(piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)" (parenthesized_expression "(piVar5 != (int *)0x0)" ( (binary_expression "piVar5 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar3 = *piVar5, iVar3 != 0)" ( (comma_expression "iVar3 = *piVar5, iVar3 != 0" (assignment_expression "iVar3 = *piVar5" identifier = (pointer_expression "*piVar5" * identifier)) , (binary_expression "iVar3 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }" { (expression_statement "FUN_0014bbac(piVar2);" (call_expression "FUN_0014bbac(piVar2)" identifier (argument_list "(piVar2)" ( identifier ))) ;) (expression_statement "*param_1 = iVar3;" (assignment_expression "*param_1 = iVar3" (pointer_expression "*param_1" * identifier) = identifier) ;) (expression_statement "*(undefined1 *)(param_1 + 1) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 1) = 0" (pointer_expression "*(undefined1 *)(param_1 + 1)" * (cast_expression "(undefined1 *)(param_1 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) )))) = number_literal) ;) (return_statement "return param_1;" return identifier ;) })) (expression_statement "local_30 = *(undefined4 *)(param_2 + 0x14);" (assignment_expression "local_30 = *(undefined4 *)(param_2 + 0x14)" identifier = (pointer_expression "*(undefined4 *)(param_2 + 0x14)" * (cast_expression "(undefined4 *)(param_2 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x14)" ( (binary_expression "param_2 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "(*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1);" (call_expression "(*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1)" (parenthesized_expression "(*(code *)PTR__M_need_rehash_004c1ac8)" ( (pointer_expression "*(code *)PTR__M_need_rehash_004c1ac8" * (cast_expression "(code *)PTR__M_need_rehash_004c1ac8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1)" ( identifier , (binary_expression "param_2 + 0x10" identifier + number_literal) , identifier , (pointer_expression "*(undefined4 *)(param_2 + 0xc)" * (cast_expression "(undefined4 *)(param_2 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) , number_literal ))) ;) (if_statement "if (local_38[0] != '\0') {\n                    \n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }" if (parenthesized_expression "(local_38[0] != '\0')" ( (binary_expression "local_38[0] != '\0'" (subscript_expression "local_38[0]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }" { (expression_statement "_M_rehash((uint)param_2,local_34);" (call_expression "_M_rehash((uint)param_2,local_34)" identifier (argument_list "((uint)param_2,local_34)" ( (cast_expression "(uint)param_2" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier ))) ;) (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }" if (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" ( (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      trap(7);\n    }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "uVar10 = uVar4 % *(uint *)(param_2 + 4);" (assignment_expression "uVar10 = uVar4 % *(uint *)(param_2 + 4)" identifier = (binary_expression "uVar4 % *(uint *)(param_2 + 4)" identifier % (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))))) ;) })) (expression_statement "iVar3 = *(int *)param_2;" (assignment_expression "iVar3 = *(int *)param_2" identifier = (pointer_expression "*(int *)param_2" * (cast_expression "(int *)param_2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "piVar2[8] = uVar4;" (assignment_expression "piVar2[8] = uVar4" (subscript_expression "piVar2[8]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar5 = (int *)(iVar3 + uVar10 * 4);" (assignment_expression "piVar5 = (int *)(iVar3 + uVar10 * 4)" identifier = (cast_expression "(int *)(iVar3 + uVar10 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + uVar10 * 4)" ( (binary_expression "iVar3 + uVar10 * 4" identifier + (binary_expression "uVar10 * 4" identifier * number_literal)) )))) ;) (if_statement "if ((int *)*piVar5 == (int *)0x0) {\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }\n  else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" if (parenthesized_expression "((int *)*piVar5 == (int *)0x0)" ( (binary_expression "(int *)*piVar5 == (int *)0x0" (cast_expression "(int *)*piVar5" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar5" * identifier)) == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }" { (expression_statement "iVar6 = *(int *)(param_2 + 8);" (assignment_expression "iVar6 = *(int *)(param_2 + 8)" identifier = (pointer_expression "*(int *)(param_2 + 8)" * (cast_expression "(int *)(param_2 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(param_2 + 8) = piVar2;" (assignment_expression "*(int **)(param_2 + 8) = piVar2" (pointer_expression "*(int **)(param_2 + 8)" * (cast_expression "(int **)(param_2 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*piVar2 = iVar6;" (assignment_expression "*piVar2 = iVar6" (pointer_expression "*piVar2" * identifier) = identifier) ;) (if_statement "if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }" { (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }" if (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" ( (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;" (assignment_expression "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2" (pointer_expression "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" * (cast_expression "(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" ( (binary_expression "iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4" identifier + (binary_expression "(*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4" (parenthesized_expression "(*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4))" ( (binary_expression "*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)" (pointer_expression "*(uint *)(iVar6 + 0x20)" * (cast_expression "(uint *)(iVar6 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x20)" ( (binary_expression "iVar6 + 0x20" identifier + number_literal) )))) % (pointer_expression "*(uint *)(param_2 + 4)" * (cast_expression "(uint *)(param_2 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) )) * number_literal)) )))) = identifier) ;) })) (expression_statement "*piVar5 = (int)(param_2 + 8);" (assignment_expression "*piVar5 = (int)(param_2 + 8)" (pointer_expression "*piVar5" * identifier) = (cast_expression "(int)(param_2 + 8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) ;) }) (else_clause "else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" else (compound_statement "{\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" { (expression_statement "*piVar2 = *(int *)*piVar5;" (assignment_expression "*piVar2 = *(int *)*piVar5" (pointer_expression "*piVar2" * identifier) = (pointer_expression "*(int *)*piVar5" * (cast_expression "(int *)*piVar5" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar5" * identifier)))) ;) (expression_statement "*(int **)*piVar5 = piVar2;" (assignment_expression "*(int **)*piVar5 = piVar2" (pointer_expression "*(int **)*piVar5" * (cast_expression "(int **)*piVar5" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar5" * identifier))) = identifier) ;) }))) (expression_statement "iVar3 = *(int *)(param_2 + 0xc);" (assignment_expression "iVar3 = *(int *)(param_2 + 0xc)" identifier = (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "*param_1 = (int)piVar2;" (assignment_expression "*param_1 = (int)piVar2" (pointer_expression "*param_1" * identifier) = (cast_expression "(int)piVar2" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "*(int *)(param_2 + 0xc) = iVar3 + 1;" (assignment_expression "*(int *)(param_2 + 0xc) = iVar3 + 1" (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar3 + 1" identifier + number_literal)) ;) (expression_statement "*(undefined1 *)(param_1 + 1) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 1) = 1" (pointer_expression "*(undefined1 *)(param_1 + 1)" * (cast_expression "(undefined1 *)(param_1 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) )))) = number_literal) ;) (return_statement "return param_1;" return identifier ;) (ERROR "}" }))
(translation_unit (declaration TYPE (pointer_declarator * (ERROR IDENT : : IDENT < IDENT : :) IDENT) , (ERROR IDENT : : IDENT < IDENT : :) IDENT , (ERROR IDENT : :) IDENT (ERROR * >) , (ERROR IDENT : : IDENT < IDENT : : IDENT < IDENT : :) IDENT , (ERROR IDENT : :) IDENT (ERROR * >>) , (ERROR IDENT : : IDENT : :) IDENT , (ERROR IDENT : : IDENT < IDENT : :) IDENT (ERROR >) , (ERROR IDENT : : IDENT < IDENT : :) IDENT (ERROR >) , (ERROR IDENT : : IDENT : :) IDENT , (ERROR IDENT : : IDENT : :) IDENT , (ERROR IDENT : : IDENT : :) IDENT , (ERROR IDENT : : IDENT : :) IDENT (ERROR < BOOL) , IDENT , (ERROR IDENT >> : : IDENT < IDENT : : IDENT < IDENT : :) IDENT , (ERROR IDENT : : (function_declarator IDENT (ERROR * >>) (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (ERROR < IDENT : :) IDENT) , (parameter_declaration TYPE (ERROR : : IDENT < IDENT : :) IDENT) , (parameter_declaration TYPE (ERROR : :) IDENT) (ERROR * >) , (parameter_declaration TYPE (ERROR : : IDENT < IDENT : : IDENT < IDENT : :) IDENT) , (parameter_declaration TYPE (ERROR : :) IDENT) (ERROR * >>) , (parameter_declaration TYPE (ERROR : : IDENT : :) IDENT) , (parameter_declaration TYPE (ERROR : : IDENT < IDENT : :) IDENT) (ERROR >) , (parameter_declaration TYPE (ERROR : : IDENT < IDENT : :) IDENT) (ERROR >) , (parameter_declaration TYPE (ERROR : : IDENT : :) IDENT) , (parameter_declaration TYPE (ERROR : : IDENT : :) IDENT) , (parameter_declaration TYPE (ERROR : : IDENT : :) IDENT) , (parameter_declaration TYPE (ERROR : : IDENT : :) IDENT) (ERROR < BOOL) , (parameter_declaration TYPE) , (parameter_declaration TYPE (ERROR >>) (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) { IDENT) (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT % IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * IDENT)) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT % (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) % (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) * LIT)) )))) = IDENT) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (return_statement return IDENT ;) (ERROR }))
(declaration "int * std::\n      _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n      ::_M_emplace<std::pair<std::string,gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined *puVar1;" (primitive_type "int") (pointer_declarator "* std::\n      _Hashtable<std::string" (* "*") (ERROR "std::\n      _Hashtable<std::" (identifier "std") (: ":") (: ":") (identifier "_Hashtable") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string")) (, ",") (ERROR "std::pair<std::" (identifier "std") (: ":") (: ":") (identifier "pair") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string_const") (, ",") (ERROR "gold::" (identifier "gold") (: ":") (: ":")) (identifier "Archive") (ERROR "*>" (* "*") (> ">")) (, ",") (ERROR "std::allocator<std::pair<std::" (identifier "std") (: ":") (: ":") (identifier "allocator") (< "<") (identifier "std") (: ":") (: ":") (identifier "pair") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string_const") (, ",") (ERROR "gold::" (identifier "gold") (: ":") (: ":")) (identifier "Archive") (ERROR "*>>" (* "*") (>> ">>")) (, ",") (ERROR "std::__detail::" (identifier "std") (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Select1st") (, ",") (ERROR "std::equal_to<std::" (identifier "std") (: ":") (: ":") (identifier "equal_to") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string") (ERROR ">" (> ">")) (, ",") (ERROR "std::hash<std::" (identifier "std") (: ":") (: ":") (identifier "hash") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string") (ERROR ">" (> ">")) (, ",") (ERROR "std::__detail::" (identifier "std") (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Mod_range_hashing") (, ",") (ERROR "std::__detail::" (identifier "std") (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Default_ranged_hash") (, ",") (ERROR "std::__detail::" (identifier "std") (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Prime_rehash_policy") (, ",") (ERROR "std::__detail::" (identifier "std") (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Hashtable_traits") (ERROR "<true" (< "<") (true "true")) (, ",") (identifier "false") (, ",") (ERROR "true>>\n      ::_M_emplace<std::pair<std::" (identifier "true") (>> ">>") (: ":") (: ":") (identifier "_M_emplace") (< "<") (identifier "std") (: ":") (: ":") (identifier "pair") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string") (, ",") (ERROR "gold::Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)\n\n{\n  undefined" (identifier "gold") (: ":") (: ":") (function_declarator "Archive*>>\n                (int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)" (identifier "Archive") (ERROR "*>>" (* "*") (>> ">>")) (parameter_list "(int *param_1,\n                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>\n                *param_2,undefined4 param_3,undefined4 *param_4)" (( "(") (parameter_declaration "int *param_1" (primitive_type "int") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "_Hashtable<std::string" (type_identifier "_Hashtable") (ERROR "<std::" (< "<") (identifier "std") (: ":") (: ":")) (identifier "string")) (, ",") (parameter_declaration "std::pair<std::string_const" (type_identifier "std") (ERROR "::pair<std::" (: ":") (: ":") (identifier "pair") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string_const")) (, ",") (parameter_declaration "gold::Archive" (type_identifier "gold") (ERROR "::" (: ":") (: ":")) (identifier "Archive")) (ERROR "*>" (* "*") (> ">")) (, ",") (parameter_declaration "std::allocator<std::pair<std::string_const" (type_identifier "std") (ERROR "::allocator<std::pair<std::" (: ":") (: ":") (identifier "allocator") (< "<") (identifier "std") (: ":") (: ":") (identifier "pair") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string_const")) (, ",") (parameter_declaration "gold::Archive" (type_identifier "gold") (ERROR "::" (: ":") (: ":")) (identifier "Archive")) (ERROR "*>>" (* "*") (>> ">>")) (, ",") (parameter_declaration "std::__detail::_Select1st" (type_identifier "std") (ERROR "::__detail::" (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Select1st")) (, ",") (parameter_declaration "std::equal_to<std::string" (type_identifier "std") (ERROR "::equal_to<std::" (: ":") (: ":") (identifier "equal_to") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string")) (ERROR ">" (> ">")) (, ",") (parameter_declaration "std::hash<std::string" (type_identifier "std") (ERROR "::hash<std::" (: ":") (: ":") (identifier "hash") (< "<") (identifier "std") (: ":") (: ":")) (identifier "string")) (ERROR ">" (> ">")) (, ",") (parameter_declaration "std::__detail::_Mod_range_hashing" (type_identifier "std") (ERROR "::__detail::" (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Mod_range_hashing")) (, ",") (parameter_declaration "std::__detail::_Default_ranged_hash" (type_identifier "std") (ERROR "::__detail::" (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Default_ranged_hash")) (, ",") (parameter_declaration "std::__detail::_Prime_rehash_policy" (type_identifier "std") (ERROR "::__detail::" (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Prime_rehash_policy")) (, ",") (parameter_declaration "std::__detail::_Hashtable_traits" (type_identifier "std") (ERROR "::__detail::" (: ":") (: ":") (identifier "__detail") (: ":") (: ":")) (identifier "_Hashtable_traits")) (ERROR "<true" (< "<") (true "true")) (, ",") (parameter_declaration "false" (type_identifier "false")) (, ",") (parameter_declaration "true>>\n                *param_2" (type_identifier "true") (ERROR ">>" (>> ">>")) (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "undefined4 *param_4" (type_identifier "undefined4") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) () ")"))) ({ "{") (identifier "undefined")) (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int *piVar2;" (primitive_type "int") (pointer_declarator "*piVar2" (* "*") (identifier "piVar2")) (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "int *piVar5;" (primitive_type "int") (pointer_declarator "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "int *piVar7;" (primitive_type "int") (pointer_declarator "*piVar7" (* "*") (identifier "piVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "char local_38 [4];" (primitive_type "char") (array_declarator "local_38 [4]" (identifier "local_38") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "uint *local_34;" (type_identifier "uint") (pointer_declarator "*local_34" (* "*") (identifier "local_34")) (; ";")) (declaration "undefined4 local_30;" (type_identifier "undefined4") (identifier "local_30") (; ";")) (expression_statement "piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24);" (assignment_expression "piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24)" (identifier "piVar2") (= "=") (cast_expression "(int *)(*(code *)PTR_operator_new_004c13a8)(0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_operator_new_004c13a8)(0x24)" (parenthesized_expression "(*(code *)PTR_operator_new_004c13a8)" (( "(") (pointer_expression "*(code *)PTR_operator_new_004c13a8" (* "*") (cast_expression "(code *)PTR_operator_new_004c13a8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_operator_new_004c13a8"))) () ")")) (argument_list "(0x24)" (( "(") (number_literal "0x24") () ")"))))) (; ";")) (expression_statement "piVar7 = (int *)*param_4;" (assignment_expression "piVar7 = (int *)*param_4" (identifier "piVar7") (= "=") (cast_expression "(int *)*param_4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*param_4" (* "*") (identifier "param_4")))) (; ";")) (expression_statement "piVar5 = piVar2 + 3;" (assignment_expression "piVar5 = piVar2 + 3" (identifier "piVar5") (= "=") (binary_expression "piVar2 + 3" (identifier "piVar2") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "*piVar2 = 0;" (assignment_expression "*piVar2 = 0" (pointer_expression "*piVar2" (* "*") (identifier "piVar2")) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar2[1] = (int)piVar5;" (assignment_expression "piVar2[1] = (int)piVar5" (subscript_expression "piVar2[1]" (identifier "piVar2") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(int)piVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar5"))) (; ";")) (if_statement "if (piVar7 == param_4 + 2) {\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }\n  else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" (if "if") (parenthesized_expression "(piVar7 == param_4 + 2)" (( "(") (binary_expression "piVar7 == param_4 + 2" (identifier "piVar7") (== "==") (binary_expression "param_4 + 2" (identifier "param_4") (+ "+") (number_literal "2"))) () ")")) (compound_statement "{\n    iVar8 = piVar7[1];\n    iVar6 = piVar7[2];\n    iVar3 = piVar7[3];\n    *piVar5 = *piVar7;\n    piVar2[4] = iVar8;\n    piVar2[5] = iVar6;\n    piVar2[6] = iVar3;\n  }" ({ "{") (expression_statement "iVar8 = piVar7[1];" (assignment_expression "iVar8 = piVar7[1]" (identifier "iVar8") (= "=") (subscript_expression "piVar7[1]" (identifier "piVar7") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "iVar6 = piVar7[2];" (assignment_expression "iVar6 = piVar7[2]" (identifier "iVar6") (= "=") (subscript_expression "piVar7[2]" (identifier "piVar7") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "iVar3 = piVar7[3];" (assignment_expression "iVar3 = piVar7[3]" (identifier "iVar3") (= "=") (subscript_expression "piVar7[3]" (identifier "piVar7") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "*piVar5 = *piVar7;" (assignment_expression "*piVar5 = *piVar7" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (expression_statement "piVar2[4] = iVar8;" (assignment_expression "piVar2[4] = iVar8" (subscript_expression "piVar2[4]" (identifier "piVar2") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "iVar8")) (; ";")) (expression_statement "piVar2[5] = iVar6;" (assignment_expression "piVar2[5] = iVar6" (subscript_expression "piVar2[5]" (identifier "piVar2") ([ "[") (number_literal "5") (] "]")) (= "=") (identifier "iVar6")) (; ";")) (expression_statement "piVar2[6] = iVar3;" (assignment_expression "piVar2[6] = iVar3" (subscript_expression "piVar2[6]" (identifier "piVar2") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "iVar3")) (; ";")) (} "}")) (else_clause "else {\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" (else "else") (compound_statement "{\n    iVar3 = param_4[2];\n    piVar2[1] = (int)piVar7;\n    piVar2[3] = iVar3;\n    piVar5 = piVar7;\n  }" ({ "{") (expression_statement "iVar3 = param_4[2];" (assignment_expression "iVar3 = param_4[2]" (identifier "iVar3") (= "=") (subscript_expression "param_4[2]" (identifier "param_4") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "piVar2[1] = (int)piVar7;" (assignment_expression "piVar2[1] = (int)piVar7" (subscript_expression "piVar2[1]" (identifier "piVar2") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7"))) (; ";")) (expression_statement "piVar2[3] = iVar3;" (assignment_expression "piVar2[3] = iVar3" (subscript_expression "piVar2[3]" (identifier "piVar2") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "piVar5 = piVar7;" (assignment_expression "piVar5 = piVar7" (identifier "piVar5") (= "=") (identifier "piVar7")) (; ";")) (} "}")))) (expression_statement "puVar1 = PTR__Hash_bytes_004c22cc;" (assignment_expression "puVar1 = PTR__Hash_bytes_004c22cc" (identifier "puVar1") (= "=") (identifier "PTR__Hash_bytes_004c22cc")) (; ";")) (expression_statement "iVar3 = param_4[1];" (assignment_expression "iVar3 = param_4[1]" (identifier "iVar3") (= "=") (subscript_expression "param_4[1]" (identifier "param_4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "*param_4 = param_4 + 2;" (assignment_expression "*param_4 = param_4 + 2" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (= "=") (binary_expression "param_4 + 2" (identifier "param_4") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "piVar2[7] = param_4[6];" (assignment_expression "piVar2[7] = param_4[6]" (subscript_expression "piVar2[7]" (identifier "piVar2") ([ "[") (number_literal "7") (] "]")) (= "=") (subscript_expression "param_4[6]" (identifier "param_4") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" (identifier "param_4") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(param_4 + 2) = 0;" (assignment_expression "*(undefined1 *)(param_4 + 2) = 0" (pointer_expression "*(undefined1 *)(param_4 + 2)" (* "*") (cast_expression "(undefined1 *)(param_4 + 2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 2)" (( "(") (binary_expression "param_4 + 2" (identifier "param_4") (+ "+") (number_literal "2")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar2[2] = iVar3;" (assignment_expression "piVar2[2] = iVar3" (subscript_expression "piVar2[2]" (identifier "piVar2") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907);" (assignment_expression "uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907)" (identifier "uVar4") (= "=") (call_expression "(*(code *)puVar1)(piVar5,iVar3,0xc70f6907)" (parenthesized_expression "(*(code *)puVar1)" (( "(") (pointer_expression "*(code *)puVar1" (* "*") (cast_expression "(code *)puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) () ")")) (argument_list "(piVar5,iVar3,0xc70f6907)" (( "(") (identifier "piVar5") (, ",") (identifier "iVar3") (, ",") (number_literal "0xc70f6907") () ")")))) (; ";")) (expression_statement "uVar9 = *(uint *)(param_2 + 4);" (assignment_expression "uVar9 = *(uint *)(param_2 + 4)" (identifier "uVar9") (= "=") (pointer_expression "*(uint *)(param_2 + 4)" (* "*") (cast_expression "(uint *)(param_2 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (uVar9 == 0) {\n    trap(7);\n  }" (if "if") (parenthesized_expression "(uVar9 == 0)" (( "(") (binary_expression "uVar9 == 0" (identifier "uVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    trap(7);\n  }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar10 = uVar4 % uVar9;" (assignment_expression "uVar10 = uVar4 % uVar9" (identifier "uVar10") (= "=") (binary_expression "uVar4 % uVar9" (identifier "uVar4") (% "%") (identifier "uVar9"))) (; ";")) (expression_statement "piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4);" (assignment_expression "piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" (identifier "piVar5") (= "=") (cast_expression "(int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" (identifier "_M_find_before_node") (argument_list "(param_2,uVar10,(string *)(piVar2 + 1),uVar4)" (( "(") (identifier "param_2") (, ",") (identifier "uVar10") (, ",") (cast_expression "(string *)(piVar2 + 1)" (( "(") (type_descriptor "string *" (type_identifier "string") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar2 + 1)" (( "(") (binary_expression "piVar2 + 1" (identifier "piVar2") (+ "+") (number_literal "1")) () ")"))) (, ",") (identifier "uVar4") () ")"))))) (; ";")) (if_statement "if ((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)) {\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }" (if "if") (parenthesized_expression "((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0))" (( "(") (binary_expression "(piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)" (parenthesized_expression "(piVar5 != (int *)0x0)" (( "(") (binary_expression "piVar5 != (int *)0x0" (identifier "piVar5") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(iVar3 = *piVar5, iVar3 != 0)" (( "(") (comma_expression "iVar3 = *piVar5, iVar3 != 0" (assignment_expression "iVar3 = *piVar5" (identifier "iVar3") (= "=") (pointer_expression "*piVar5" (* "*") (identifier "piVar5"))) (, ",") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    FUN_0014bbac(piVar2);\n    *param_1 = iVar3;\n    *(undefined1 *)(param_1 + 1) = 0;\n    return param_1;\n  }" ({ "{") (expression_statement "FUN_0014bbac(piVar2);" (call_expression "FUN_0014bbac(piVar2)" (identifier "FUN_0014bbac") (argument_list "(piVar2)" (( "(") (identifier "piVar2") () ")"))) (; ";")) (expression_statement "*param_1 = iVar3;" (assignment_expression "*param_1 = iVar3" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(undefined1 *)(param_1 + 1) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 1) = 0" (pointer_expression "*(undefined1 *)(param_1 + 1)" (* "*") (cast_expression "(undefined1 *)(param_1 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 1)" (( "(") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (return_statement "return param_1;" (return "return") (identifier "param_1") (; ";")) (} "}"))) (expression_statement "local_30 = *(undefined4 *)(param_2 + 0x14);" (assignment_expression "local_30 = *(undefined4 *)(param_2 + 0x14)" (identifier "local_30") (= "=") (pointer_expression "*(undefined4 *)(param_2 + 0x14)" (* "*") (cast_expression "(undefined4 *)(param_2 + 0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x14)" (( "(") (binary_expression "param_2 + 0x14" (identifier "param_2") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "(*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1);" (call_expression "(*(code *)PTR__M_need_rehash_004c1ac8)\n            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1)" (parenthesized_expression "(*(code *)PTR__M_need_rehash_004c1ac8)" (( "(") (pointer_expression "*(code *)PTR__M_need_rehash_004c1ac8" (* "*") (cast_expression "(code *)PTR__M_need_rehash_004c1ac8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR__M_need_rehash_004c1ac8"))) () ")")) (argument_list "(local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1)" (( "(") (identifier "local_38") (, ",") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) (, ",") (identifier "uVar9") (, ",") (pointer_expression "*(undefined4 *)(param_2 + 0xc)" (* "*") (cast_expression "(undefined4 *)(param_2 + 0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")")))) (, ",") (number_literal "1") () ")"))) (; ";")) (if_statement "if (local_38[0] != '\0') {\n                    \n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }" (if "if") (parenthesized_expression "(local_38[0] != '\0')" (( "(") (binary_expression "local_38[0] != '\0'" (subscript_expression "local_38[0]" (identifier "local_38") ([ "[") (number_literal "0") (] "]")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n    _M_rehash((uint)param_2,local_34);\n    if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }\n    uVar10 = uVar4 % *(uint *)(param_2 + 4);\n  }" ({ "{") (expression_statement "_M_rehash((uint)param_2,local_34);" (call_expression "_M_rehash((uint)param_2,local_34)" (identifier "_M_rehash") (argument_list "((uint)param_2,local_34)" (( "(") (cast_expression "(uint)param_2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_2")) (, ",") (identifier "local_34") () ")"))) (; ";")) (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n      trap(7);\n    }" (if "if") (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" (( "(") (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" (* "*") (cast_expression "(uint *)(param_2 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      trap(7);\n    }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar10 = uVar4 % *(uint *)(param_2 + 4);" (assignment_expression "uVar10 = uVar4 % *(uint *)(param_2 + 4)" (identifier "uVar10") (= "=") (binary_expression "uVar4 % *(uint *)(param_2 + 4)" (identifier "uVar4") (% "%") (pointer_expression "*(uint *)(param_2 + 4)" (* "*") (cast_expression "(uint *)(param_2 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")")))))) (; ";")) (} "}"))) (expression_statement "iVar3 = *(int *)param_2;" (assignment_expression "iVar3 = *(int *)param_2" (identifier "iVar3") (= "=") (pointer_expression "*(int *)param_2" (* "*") (cast_expression "(int *)param_2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_2")))) (; ";")) (expression_statement "piVar2[8] = uVar4;" (assignment_expression "piVar2[8] = uVar4" (subscript_expression "piVar2[8]" (identifier "piVar2") ([ "[") (number_literal "8") (] "]")) (= "=") (identifier "uVar4")) (; ";")) (expression_statement "piVar5 = (int *)(iVar3 + uVar10 * 4);" (assignment_expression "piVar5 = (int *)(iVar3 + uVar10 * 4)" (identifier "piVar5") (= "=") (cast_expression "(int *)(iVar3 + uVar10 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + uVar10 * 4)" (( "(") (binary_expression "iVar3 + uVar10 * 4" (identifier "iVar3") (+ "+") (binary_expression "uVar10 * 4" (identifier "uVar10") (* "*") (number_literal "4"))) () ")")))) (; ";")) (if_statement "if ((int *)*piVar5 == (int *)0x0) {\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }\n  else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" (if "if") (parenthesized_expression "((int *)*piVar5 == (int *)0x0)" (( "(") (binary_expression "(int *)*piVar5 == (int *)0x0" (cast_expression "(int *)*piVar5" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar5" (* "*") (identifier "piVar5"))) (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar6 = *(int *)(param_2 + 8);\n    *(int **)(param_2 + 8) = piVar2;\n    *piVar2 = iVar6;\n    if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }\n    *piVar5 = (int)(param_2 + 8);\n  }" ({ "{") (expression_statement "iVar6 = *(int *)(param_2 + 8);" (assignment_expression "iVar6 = *(int *)(param_2 + 8)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(param_2 + 8)" (* "*") (cast_expression "(int *)(param_2 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "*(int **)(param_2 + 8) = piVar2;" (assignment_expression "*(int **)(param_2 + 8) = piVar2" (pointer_expression "*(int **)(param_2 + 8)" (* "*") (cast_expression "(int **)(param_2 + 8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "piVar2")) (; ";")) (expression_statement "*piVar2 = iVar6;" (assignment_expression "*piVar2 = iVar6" (pointer_expression "*piVar2" (* "*") (identifier "piVar2")) (= "=") (identifier "iVar6")) (; ";")) (if_statement "if (iVar6 != 0) {\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }\n      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;\n    }" ({ "{") (if_statement "if (*(uint *)(param_2 + 4) == 0) {\n        trap(7);\n      }" (if "if") (parenthesized_expression "(*(uint *)(param_2 + 4) == 0)" (( "(") (binary_expression "*(uint *)(param_2 + 4) == 0" (pointer_expression "*(uint *)(param_2 + 4)" (* "*") (cast_expression "(uint *)(param_2 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        trap(7);\n      }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;" (assignment_expression "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2" (pointer_expression "*(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" (* "*") (cast_expression "(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4)" (( "(") (binary_expression "iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4" (identifier "iVar3") (+ "+") (binary_expression "(*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4" (parenthesized_expression "(*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4))" (( "(") (binary_expression "*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)" (pointer_expression "*(uint *)(iVar6 + 0x20)" (* "*") (cast_expression "(uint *)(iVar6 + 0x20)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x20)" (( "(") (binary_expression "iVar6 + 0x20" (identifier "iVar6") (+ "+") (number_literal "0x20")) () ")")))) (% "%") (pointer_expression "*(uint *)(param_2 + 4)" (* "*") (cast_expression "(uint *)(param_2 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")"))))) () ")")) (* "*") (number_literal "4"))) () ")")))) (= "=") (identifier "piVar2")) (; ";")) (} "}"))) (expression_statement "*piVar5 = (int)(param_2 + 8);" (assignment_expression "*piVar5 = (int)(param_2 + 8)" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (= "=") (cast_expression "(int)(param_2 + 8)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" (else "else") (compound_statement "{\n    *piVar2 = *(int *)*piVar5;\n    *(int **)*piVar5 = piVar2;\n  }" ({ "{") (expression_statement "*piVar2 = *(int *)*piVar5;" (assignment_expression "*piVar2 = *(int *)*piVar5" (pointer_expression "*piVar2" (* "*") (identifier "piVar2")) (= "=") (pointer_expression "*(int *)*piVar5" (* "*") (cast_expression "(int *)*piVar5" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar5" (* "*") (identifier "piVar5"))))) (; ";")) (expression_statement "*(int **)*piVar5 = piVar2;" (assignment_expression "*(int **)*piVar5 = piVar2" (pointer_expression "*(int **)*piVar5" (* "*") (cast_expression "(int **)*piVar5" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar5" (* "*") (identifier "piVar5")))) (= "=") (identifier "piVar2")) (; ";")) (} "}")))) (expression_statement "iVar3 = *(int *)(param_2 + 0xc);" (assignment_expression "iVar3 = *(int *)(param_2 + 0xc)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(param_2 + 0xc)" (* "*") (cast_expression "(int *)(param_2 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "*param_1 = (int)piVar2;" (assignment_expression "*param_1 = (int)piVar2" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (cast_expression "(int)piVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar2"))) (; ";")) (expression_statement "*(int *)(param_2 + 0xc) = iVar3 + 1;" (assignment_expression "*(int *)(param_2 + 0xc) = iVar3 + 1" (pointer_expression "*(int *)(param_2 + 0xc)" (* "*") (cast_expression "(int *)(param_2 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "iVar3 + 1" (identifier "iVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(undefined1 *)(param_1 + 1) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 1) = 1" (pointer_expression "*(undefined1 *)(param_1 + 1)" (* "*") (cast_expression "(undefined1 *)(param_1 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 1)" (( "(") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "1")) (; ";")) (return_statement "return param_1;" (return "return") (identifier "param_1") (; ";")) (ERROR "}" (} "}"))

/* DWARF original name: _M_emplace<std::pair<std::__cxx11::basic_string<char,
   std::char_traits<char>, std::allocator<char> >, gold::Archive*> >
   DWARF original prototype:
   pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
   _M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>(_Hashtable<const_gold::Symbol*,_std::pair<const_gold::Symbol*_const,_int>,_std::allocator<std::pair<const_gold::Symbol*_const,_int>_>,_std::__detail::_Select1st,_std::equal_to<const_gold::Symbol*>,_std::hash<const_gold::Symbol*>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<false,_false,_true>_>
   * this, true_type param_2,
   pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>
   * __args#0) */

pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
 __thiscall
std::
_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
::
_M_emplace<std::pair<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>
          (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
           *this,_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
                 *param_2,undefined4 param_3,undefined4 *param_4)

{
  undefined *puVar1;
  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
  *this_00;
  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
  *p_Var2;
  undefined4 uVar3;
  uint __code;
  __node_base *p_Var4;
  int iVar5;
  int iVar6;
  _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
  *p_Var7;
  __node_type *__n;
  int *piVar8;
  undefined4 uVar9;
  undefined4 uVar10;
  uint uVar11;
  _Hash_node_base *p_Var12;
  __node_type *__n_00;
  undefined8 uVar13;
  pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
  pVar14;
  pair<std::__detail::_Node_iterator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_false,_true>,_bool>
  pVar15;
  pair<bool,_unsigned_int> __do_rehash;
  __rehash_state local_30 [4];
  
  this_00 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
             *)(*(code *)PTR_operator_new_004c13a8)(0x24);
  p_Var7 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
            *)*param_4;
  p_Var2 = this_00 + 0xc;
  *(undefined4 *)this_00 = 0;
  *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
    **)(this_00 + 4) = p_Var2;
  if (p_Var7 == (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
                 *)(param_4 + 2)) {
    uVar10 = *(undefined4 *)(p_Var7 + 4);
    uVar9 = *(undefined4 *)(p_Var7 + 8);
    uVar3 = *(undefined4 *)(p_Var7 + 0xc);
    *(undefined4 *)p_Var2 = *(undefined4 *)p_Var7;
    *(undefined4 *)(this_00 + 0x10) = uVar10;
    *(undefined4 *)(this_00 + 0x14) = uVar9;
    *(undefined4 *)(this_00 + 0x18) = uVar3;
  }
  else {
    uVar3 = param_4[2];
    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
      **)(this_00 + 4) = p_Var7;
    *(undefined4 *)(this_00 + 0xc) = uVar3;
    p_Var2 = p_Var7;
  }
  puVar1 = PTR__Hash_bytes_004c22cc;
  uVar3 = param_4[1];
  *param_4 = (_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
              *)(param_4 + 2);
  *(undefined4 *)(this_00 + 0x1c) = param_4[6];
  param_4[1] = 0;
  *(undefined1 *)(param_4 + 2) = 0;
  *(undefined4 *)(this_00 + 8) = uVar3;
  uVar13 = (*(code *)puVar1)(p_Var2,uVar3,0xc70f6907);
  __code = (uint)((ulonglong)uVar13 >> 0x20);
  uVar3 = (undefined4)uVar13;
  uVar11 = *(uint *)(param_2 + 4);
  if (uVar11 == 0) {
    trap(7);
  }
  __n_00 = (__node_type *)(__code % uVar11);
  __n = __n_00;
  p_Var4 = _M_find_before_node(param_2,(size_type)__n_00,(key_type *)(this_00 + 4),__code);
  if ((p_Var4 != (__node_base *)0x0) &&
     (p_Var12 = p_Var4->_M_nxt, p_Var12 != (_Hash_node_base *)0x0)) {
    __detail::
    _Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
    ::_M_deallocate_node(this_00,__n);
    *(_Hash_node_base **)this = p_Var12;
    this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
               )0x0;
    pVar14.first.
    super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
    ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
               )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
                 )this;
    pVar14._4_4_ = uVar3;
    return pVar14;
  }
  local_30[0] = *(__rehash_state *)(param_2 + 0x14);
  (*(code *)PTR__M_need_rehash_004c1ac8)
            (&__do_rehash,param_2 + 0x10,uVar11,*(undefined4 *)(param_2 + 0xc),1);
  if (__do_rehash.first != false) {
                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */
    _M_rehash(param_2,__do_rehash.second,local_30);
    if (*(uint *)(param_2 + 4) == 0) {
      trap(7);
    }
    __n_00 = (__node_type *)(__code % *(uint *)(param_2 + 4));
  }
  iVar6 = *(int *)param_2;
  *(uint *)(this_00 + 0x20) = __code;
  piVar8 = (int *)(iVar6 + (int)__n_00 * 4);
  if ((undefined4 *)*piVar8 == (undefined4 *)0x0) {
    iVar5 = *(int *)(param_2 + 8);
    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
      **)(param_2 + 8) = this_00;
    *(int *)this_00 = iVar5;
    if (iVar5 != 0) {
      if (*(uint *)(param_2 + 4) == 0) {
        trap(7);
      }
      *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
        **)(iVar6 + (*(uint *)(iVar5 + 0x20) % *(uint *)(param_2 + 4)) * 4) = this_00;
    }
    *piVar8 = (int)(param_2 + 8);
  }
  else {
    *(undefined4 *)this_00 = *(undefined4 *)*piVar8;
    *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
      **)*piVar8 = this_00;
  }
  iVar6 = *(int *)(param_2 + 0xc);
  *(_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>_>_>
    **)this = this_00;
  *(int *)(param_2 + 0xc) = iVar6 + 1;
  this[4] = (_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>_>,_std::__detail::_Select1st,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
             )0x1;
  pVar15.first.
  super__Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
  ._M_cur = (_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
             )(_Node_iterator_base<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_gold::Archive*>,_true>
               )this;
  pVar15._4_4_ = 1;
  return pVar15;
}


(translation_unit (declaration type: (primitive_type) declarator: (pointer_declarator (ERROR (identifier) (identifier) (identifier)) declarator: (identifier)) (ERROR (identifier) (identifier) (identifier)) declarator: (identifier) (ERROR (identifier)) declarator: (identifier) (ERROR) (ERROR (identifier) (identifier) (identifier) (identifier) (identifier)) declarator: (identifier) (ERROR (identifier)) declarator: (identifier) (ERROR) (ERROR (identifier) (identifier)) declarator: (identifier) (ERROR (identifier) (identifier) (identifier)) declarator: (identifier) (ERROR) (ERROR (identifier) (identifier) (identifier)) declarator: (identifier) (ERROR) (ERROR (identifier) (identifier)) declarator: (identifier) (ERROR (identifier) (identifier)) declarator: (identifier) (ERROR (identifier) (identifier)) declarator: (identifier) (ERROR (identifier) (identifier)) declarator: (identifier) (ERROR (true)) declarator: (identifier) (ERROR (identifier) (identifier) (identifier) (identifier) (identifier)) declarator: (identifier) (ERROR (identifier) (function_declarator declarator: (identifier) (ERROR) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) (ERROR (identifier)) declarator: (identifier)) (parameter_declaration type: (type_identifier) (ERROR (identifier) (identifier)) declarator: (identifier)) (parameter_declaration type: (type_identifier) (ERROR) declarator: (identifier)) (ERROR) (parameter_declaration type: (type_identifier) (ERROR (identifier) (identifier) (identifier) (identifier)) declarator: (identifier)) (parameter_declaration type: (type_identifier) (ERROR) declarator: (identifier)) (ERROR) (parameter_declaration type: (type_identifier) (ERROR (identifier)) declarator: (identifier)) (parameter_declaration type: (type_identifier) (ERROR (identifier) (identifier)) declarator: (identifier)) (ERROR) (parameter_declaration type: (type_identifier) (ERROR (identifier) (identifier)) declarator: (identifier)) (ERROR) (parameter_declaration type: (type_identifier) (ERROR (identifier)) declarator: (identifier)) (parameter_declaration type: (type_identifier) (ERROR (identifier)) declarator: (identifier)) (parameter_declaration type: (type_identifier) (ERROR (identifier)) declarator: (identifier)) (parameter_declaration type: (type_identifier) (ERROR (identifier)) declarator: (identifier)) (ERROR (true)) (parameter_declaration type: (type_identifier)) (parameter_declaration type: (type_identifier) (ERROR) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) (identifier)) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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 (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (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 (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal)))))) right: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier)))) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (return_statement (identifier)) (ERROR))

/* std::pair<std::__detail::_Node_iterator<std::pair<std::string const, gold::Archive*>, false,
   true>, bool> std::_Hashtable<std::string, std::pair<std::string const, gold::Archive*>,
   std::allocator<std::pair<std::string const, gold::Archive*> >, std::__detail::_Select1st,
   std::equal_to<std::string >, std::hash<std::string >, std::__detail::_Mod_range_hashing,
   std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy,
   std::__detail::_Hashtable_traits<true, false, true> >::_M_emplace<std::pair<std::string,
   gold::Archive*> >(std::integral_constant<bool, true>, std::pair<std::string, gold::Archive*>&&)
    */

int * std::
      _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>
      ::MASKED
                (int *param_1,
                _Hashtable<std::string,std::pair<std::string_const,gold::Archive*>,std::allocator<std::pair<std::string_const,gold::Archive*>>,std::__detail::_Select1st,std::equal_to<std::string>,std::hash<std::string>,std::__detail::_Mod_range_hashing,std::__detail::_Default_ranged_hash,std::__detail::_Prime_rehash_policy,std::__detail::_Hashtable_traits<true,false,true>>
                *param_2,undefined4 param_3,undefined4 *param_4)

{
  undefined *puVar1;
  int *piVar2;
  int iVar3;
  uint uVar4;
  int *piVar5;
  int iVar6;
  int *piVar7;
  int iVar8;
  uint uVar9;
  uint uVar10;
  char local_38 [4];
  uint *local_34;
  undefined4 local_30;
  
  piVar2 = (int *)(*(code *)PTR_operator_new_004c13a8)(0x24);
  piVar7 = (int *)*param_4;
  piVar5 = piVar2 + 3;
  *piVar2 = 0;
  piVar2[1] = (int)piVar5;
  if (piVar7 == param_4 + 2) {
    iVar8 = piVar7[1];
    iVar6 = piVar7[2];
    iVar3 = piVar7[3];
    *piVar5 = *piVar7;
    piVar2[4] = iVar8;
    piVar2[5] = iVar6;
    piVar2[6] = iVar3;
  }
  else {
    iVar3 = param_4[2];
    piVar2[1] = (int)piVar7;
    piVar2[3] = iVar3;
    piVar5 = piVar7;
  }
  puVar1 = PTR__Hash_bytes_004c22cc;
  iVar3 = param_4[1];
  *param_4 = param_4 + 2;
  piVar2[7] = param_4[6];
  param_4[1] = 0;
  *(undefined1 *)(param_4 + 2) = 0;
  piVar2[2] = iVar3;
  uVar4 = (*(code *)puVar1)(piVar5,iVar3,0xc70f6907);
  uVar9 = *(uint *)(param_2 + 4);
  if (uVar9 == 0) {
    trap(7);
  }
  uVar10 = uVar4 % uVar9;
  piVar5 = (int *)_M_find_before_node(param_2,uVar10,(string *)(piVar2 + 1),uVar4);
  if ((piVar5 != (int *)0x0) && (iVar3 = *piVar5, iVar3 != 0)) {
    FUN_0014bbac(piVar2);
    *param_1 = iVar3;
    *(undefined1 *)(param_1 + 1) = 0;
    return param_1;
  }
  local_30 = *(undefined4 *)(param_2 + 0x14);
  (*(code *)PTR__M_need_rehash_004c1ac8)
            (local_38,param_2 + 0x10,uVar9,*(undefined4 *)(param_2 + 0xc),1);
  if (local_38[0] != '\0') {
                    /* try { // try from 0015219c to 001521a3 has its CatchHandler @ 001522a8 */
    _M_rehash((uint)param_2,local_34);
    if (*(uint *)(param_2 + 4) == 0) {
      trap(7);
    }
    uVar10 = uVar4 % *(uint *)(param_2 + 4);
  }
  iVar3 = *(int *)param_2;
  piVar2[8] = uVar4;
  piVar5 = (int *)(iVar3 + uVar10 * 4);
  if ((int *)*piVar5 == (int *)0x0) {
    iVar6 = *(int *)(param_2 + 8);
    *(int **)(param_2 + 8) = piVar2;
    *piVar2 = iVar6;
    if (iVar6 != 0) {
      if (*(uint *)(param_2 + 4) == 0) {
        trap(7);
      }
      *(int **)(iVar3 + (*(uint *)(iVar6 + 0x20) % *(uint *)(param_2 + 4)) * 4) = piVar2;
    }
    *piVar5 = (int)(param_2 + 8);
  }
  else {
    *piVar2 = *(int *)*piVar5;
    *(int **)*piVar5 = piVar2;
  }
  iVar3 = *(int *)(param_2 + 0xc);
  *param_1 = (int)piVar2;
  *(int *)(param_2 + 0xc) = iVar3 + 1;
  *(undefined1 *)(param_1 + 1) = 1;
  return param_1;
}

