
void FUN_0014879a(void)

{
  undefined8 in_RAX;
  long unaff_RBX;
  undefined8 *unaff_RBP;
  int __in_chrg;
  undefined8 uVar1;
  undefined8 *puVar2;
  undefined8 *unaff_R12;
  undefined8 *puVar3;
  void *unaff_R13;
  void *unaff_R14;
  void *unaff_R15;
  Stringpool_template<char> *unaff_retaddr;
  Stringpool_template<char> *in_stack_00000008;
  Stringpool_template<char> *in_stack_00000010;
  void *in_stack_00000018;
  void *in_stack_00000020;
  undefined8 uStack0000000000000028;
  
  uStack0000000000000028 = in_RAX;
  operator_delete(in_stack_00000018,0x90);
  if (in_stack_00000020 != (void *)unaff_RBP[3]) {
    operator_delete((void *)unaff_RBP[3]);
  }
  if ((void *)*unaff_RBP != (void *)0x0) {
    operator_delete((void *)*unaff_RBP);
  }
  operator_delete(unaff_RBP,0x80);
  std::
  _Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>
  ::_M_erase((_Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>
              *)(unaff_RBX + 0x4a0),*(_Link_type *)(unaff_RBX + 0x4b0));
  puVar2 = *(undefined8 **)(unaff_RBX + 0x468);
  while (unaff_R12 != puVar2) {
    puVar3 = (undefined8 *)*puVar2;
    operator_delete(puVar2);
    puVar2 = puVar3;
  }
  puVar2 = *(undefined8 **)(unaff_RBX + 0x450);
  for (puVar3 = *(undefined8 **)(unaff_RBX + 0x448); puVar2 != puVar3; puVar3 = puVar3 + 4) {
    if ((undefined8 *)*puVar3 != puVar3 + 2) {
      operator_delete((undefined8 *)*puVar3);
    }
  }
  if (*(void **)(unaff_RBX + 0x448) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x448));
  }
  puVar2 = *(undefined8 **)(unaff_RBX + 0x420);
  while (puVar2 != (undefined8 *)0x0) {
    puVar3 = (undefined8 *)*puVar2;
    if ((undefined8 *)puVar2[1] != puVar2 + 3) {
      operator_delete((undefined8 *)puVar2[1]);
    }
    operator_delete(puVar2);
    puVar2 = puVar3;
  }
  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);
  *(undefined8 *)(unaff_RBX + 0x428) = 0;
  *(undefined8 *)(unaff_RBX + 0x420) = 0;
  if (unaff_R15 != *(void **)(unaff_RBX + 0x410)) {
    operator_delete(*(void **)(unaff_RBX + 0x410));
  }
  std::
  _Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>
  ::_M_erase((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>
              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0));
  std::
  _Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>
  ::_M_erase((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>
              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0));
  if (*(void **)(unaff_RBX + 0x388) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x388));
  }
  if (*(void **)(unaff_RBX + 0x348) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x348));
  }
  if (*(void **)(unaff_RBX + 0x290) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x290));
  }
  if (*(void **)(unaff_RBX + 0x278) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x278));
  }
  if (*(void **)(unaff_RBX + 0x260) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x260));
  }
  if (*(void **)(unaff_RBX + 0x248) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x248));
  }
  if (*(void **)(unaff_RBX + 0x230) != (void *)0x0) {
    operator_delete(*(void **)(unaff_RBX + 0x230));
  }
  puVar2 = *(undefined8 **)(unaff_RBX + 0x208);
  while (puVar2 != (undefined8 *)0x0) {
    puVar3 = (undefined8 *)*puVar2;
    operator_delete(puVar2);
    puVar2 = puVar3;
  }
  uVar1 = 0;
  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);
  *(undefined8 *)(unaff_RBX + 0x210) = 0;
  *(undefined8 *)(unaff_RBX + 0x208) = 0;
  if (unaff_R14 != *(void **)(unaff_RBX + 0x1f8)) {
    operator_delete(*(void **)(unaff_RBX + 0x1f8));
  }
  puVar2 = *(undefined8 **)(unaff_RBX + 0x1d0);
  while (puVar2 != (undefined8 *)0x0) {
    puVar3 = (undefined8 *)*puVar2;
    gold::Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);
    if ((undefined8 *)puVar2[1] != puVar2 + 3) {
      operator_delete((undefined8 *)puVar2[1]);
    }
    operator_delete(puVar2);
    puVar2 = puVar3;
  }
  __in_chrg = 0;
  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);
  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;
  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;
  if (unaff_R13 != *(void **)(unaff_RBX + 0x1c0)) {
    operator_delete(*(void **)(unaff_RBX + 0x1c0));
  }
  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000010,__in_chrg);
  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000008,__in_chrg);
  gold::Stringpool_template<char>::~Stringpool_template(unaff_retaddr,__in_chrg);
                    /* WARNING: Subroutine does not return */
  _Unwind_Resume(uStack0000000000000028);
}



void FUN_0014879a(void)

{
  undefined8 *puVar1;
  long *plVar2;
  undefined8 in_RAX;
  long unaff_RBX;
  long *unaff_RBP;
  undefined8 *puVar3;
  undefined8 *unaff_R12;
  long *plVar4;
  long unaff_R13;
  long unaff_R14;
  long unaff_R15;
  undefined8 unaff_retaddr;
  undefined8 in_stack_00000008;
  undefined8 in_stack_00000010;
  undefined8 in_stack_00000018;
  long in_stack_00000020;
  undefined8 uStack0000000000000028;
  
  uStack0000000000000028 = in_RAX;
  thunk_FUN_002dac70(in_stack_00000018,0x90);
  if (in_stack_00000020 != unaff_RBP[3]) {
    FUN_002dac70();
  }
  if (*unaff_RBP != 0) {
    FUN_002dac70();
  }
  thunk_FUN_002dac70();
  FUN_001b1c50(unaff_RBX + 0x4a0);
  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);
  while (unaff_R12 != puVar3) {
    puVar3 = (undefined8 *)*puVar3;
    FUN_002dac70();
  }
  plVar2 = *(long **)(unaff_RBX + 0x450);
  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {
    if ((long *)*plVar4 != plVar4 + 2) {
      FUN_002dac70();
    }
  }
  if (*(long *)(unaff_RBX + 0x448) != 0) {
    FUN_002dac70();
  }
  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);
  while (puVar3 != (undefined8 *)0x0) {
    puVar1 = (undefined8 *)*puVar3;
    if ((undefined8 *)puVar3[1] != puVar3 + 3) {
      FUN_002dac70();
    }
    FUN_002dac70(puVar3);
    puVar3 = puVar1;
  }
  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);
  *(undefined8 *)(unaff_RBX + 0x428) = 0;
  *(undefined8 *)(unaff_RBX + 0x420) = 0;
  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {
    FUN_002dac70();
  }
  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));
  FUN_001b1bd0(unaff_RBX + 0x3b0);
  if (*(long *)(unaff_RBX + 0x388) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x348) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x290) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x278) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x260) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x248) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x230) != 0) {
    FUN_002dac70();
  }
  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);
  while (puVar3 != (undefined8 *)0x0) {
    puVar3 = (undefined8 *)*puVar3;
    FUN_002dac70();
  }
  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);
  *(undefined8 *)(unaff_RBX + 0x210) = 0;
  *(undefined8 *)(unaff_RBX + 0x208) = 0;
  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {
    FUN_002dac70();
  }
  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);
  while (puVar3 != (undefined8 *)0x0) {
    puVar1 = (undefined8 *)*puVar3;
    FUN_001b1b90(puVar3 + 5);
    if ((undefined8 *)puVar3[1] != puVar3 + 3) {
      FUN_002dac70();
    }
    FUN_002dac70(puVar3);
    puVar3 = puVar1;
  }
  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);
  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;
  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;
  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {
    FUN_002dac70();
  }
  FUN_0026c780(in_stack_00000010);
  FUN_0026c780(in_stack_00000008);
  FUN_0026c780(unaff_retaddr);
                    /* WARNING: Subroutine does not return */
  FUN_003688e0(uStack0000000000000028);
}


MOV RDI,qword ptr [RSP + 0x18]
MOV ESI,0x90
MOV qword ptr [RSP + 0x28],RAX
CALL 0x002dac60
MOV RAX,qword ptr [RSP + 0x28]
MOV qword ptr [RSP + 0x18],RAX
MOV RDI,qword ptr [RBP + 0x18]
CMP qword ptr [RSP + 0x20],RDI
JZ 0x001487c8
CALL 0x002dac70
MOV RDI,qword ptr [RBP]
TEST RDI,RDI
JZ 0x001487d6
CALL 0x002dac70
MOV RDI,RBP
MOV ESI,0x80
CALL 0x002dac60
MOV RBP,qword ptr [RSP + 0x18]
MOV RSI,qword ptr [RBX + 0x4b0]
LEA RDI,[RBX + 0x4a0]
CALL 0x001b1c50
MOV RDI,qword ptr [RBX + 0x468]
CMP R12,RDI
JNZ 0x0014898b
MOV RAX,qword ptr [RBX + 0x450]
MOV R12,qword ptr [RBX + 0x448]
MOV qword ptr [RSP + 0x18],RAX
CMP qword ptr [RSP + 0x18],R12
JNZ 0x001489a2
MOV RDI,qword ptr [RBX + 0x448]
TEST RDI,RDI
JZ 0x0014883a
CALL 0x002dac70
MOV R12,qword ptr [RBX + 0x420]
TEST R12,R12
JNZ 0x001489be
MOV RAX,qword ptr [RBX + 0x418]
MOV RDI,qword ptr [RBX + 0x410]
XOR ESI,ESI
LEA RDX,[RAX*0x8]
CALL 0x00147100
MOV RDI,qword ptr [RBX + 0x410]
MOV qword ptr [RBX + 0x428],0x0
MOV qword ptr [RBX + 0x420],0x0
CMP R15,RDI
JZ 0x0014888e
CALL 0x002dac70
MOV RSI,qword ptr [RBX + 0x3f0]
LEA RDI,[RBX + 0x3e0]
CALL 0x001b1c10
MOV RSI,qword ptr [RBX + 0x3c0]
LEA RDI,[RBX + 0x3b0]
CALL 0x001b1bd0
MOV RDI,qword ptr [RBX + 0x388]
TEST RDI,RDI
JZ 0x001488c5
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x348]
TEST RDI,RDI
JZ 0x001488d6
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x290]
TEST RDI,RDI
JZ 0x001488e7
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x278]
TEST RDI,RDI
JZ 0x001488f8
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x260]
TEST RDI,RDI
JZ 0x00148909
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x248]
TEST RDI,RDI
JZ 0x0014891a
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x230]
TEST RDI,RDI
JZ 0x0014892b
CALL 0x002dac70
MOV RDI,qword ptr [RBX + 0x208]
TEST RDI,RDI
JNZ 0x001489ed
MOV RAX,qword ptr [RBX + 0x200]
MOV RDI,qword ptr [RBX + 0x1f8]
XOR ESI,ESI
LEA RDX,[RAX*0x8]
CALL 0x00147100
MOV RDI,qword ptr [RBX + 0x1f8]
MOV qword ptr [RBX + 0x210],0x0
MOV qword ptr [RBX + 0x208],0x0
CMP R14,RDI
JZ 0x0014897f
CALL 0x002dac70
MOV R14,qword ptr [RBX + 0x1d0]
JMP 0x00148729
MOV RAX,qword ptr [RDI]
MOV qword ptr [RSP + 0x18],RAX
CALL 0x002dac70
MOV RDI,qword ptr [RSP + 0x18]
JMP 0x00148802
MOV RDI,qword ptr [R12]
LEA RDX,[R12 + 0x10]
CMP RDI,RDX
JZ 0x001489b5
CALL 0x002dac70
ADD R12,0x20
JMP 0x0014881e
MOV RAX,qword ptr [R12]
MOV RDI,qword ptr [R12 + 0x8]
LEA RDX,[R12 + 0x18]
MOV qword ptr [RSP + 0x18],RAX
CMP RDI,RDX
JZ 0x001489db
CALL 0x002dac70
MOV RDI,R12
CALL 0x002dac70
MOV R12,qword ptr [RSP + 0x18]
JMP 0x00148841
MOV R12,qword ptr [RDI]
CALL 0x002dac70
MOV RDI,R12
JMP 0x00148932
(translation_unit "void FUN_0014879a(void)\n\n{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    /* WARNING: Subroutine does not return */\n  FUN_003688e0(uStack0000000000000028);\n}\n\n" (function_definition "void FUN_0014879a(void)\n\n{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    /* WARNING: Subroutine does not return */\n  FUN_003688e0(uStack0000000000000028);\n}" primitive_type (function_declarator "FUN_0014879a(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    /* WARNING: Subroutine does not return */\n  FUN_003688e0(uStack0000000000000028);\n}" { (declaration "undefined8 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "undefined8 in_RAX;" type_identifier identifier ;) (declaration "long unaff_RBX;" (sized_type_specifier "long" long) identifier ;) (declaration "long *unaff_RBP;" (sized_type_specifier "long" long) (pointer_declarator "*unaff_RBP" * identifier) ;) (declaration "undefined8 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined8 *unaff_R12;" type_identifier (pointer_declarator "*unaff_R12" * identifier) ;) (declaration "long *plVar4;" (sized_type_specifier "long" long) (pointer_declarator "*plVar4" * identifier) ;) (declaration "long unaff_R13;" (sized_type_specifier "long" long) identifier ;) (declaration "long unaff_R14;" (sized_type_specifier "long" long) identifier ;) (declaration "long unaff_R15;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 unaff_retaddr;" type_identifier identifier ;) (declaration "undefined8 in_stack_00000008;" type_identifier identifier ;) (declaration "undefined8 in_stack_00000010;" type_identifier identifier ;) (declaration "undefined8 in_stack_00000018;" type_identifier identifier ;) (declaration "long in_stack_00000020;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uStack0000000000000028;" type_identifier identifier ;) (expression_statement "uStack0000000000000028 = in_RAX;" (assignment_expression "uStack0000000000000028 = in_RAX" identifier = identifier) ;) (expression_statement "thunk_FUN_002dac70(in_stack_00000018,0x90);" (call_expression "thunk_FUN_002dac70(in_stack_00000018,0x90)" identifier (argument_list "(in_stack_00000018,0x90)" ( identifier , number_literal ))) ;) (if_statement "if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(in_stack_00000020 != unaff_RBP[3])" ( (binary_expression "in_stack_00000020 != unaff_RBP[3]" identifier != (subscript_expression "unaff_RBP[3]" identifier [ number_literal ])) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*unaff_RBP != 0)" ( (binary_expression "*unaff_RBP != 0" (pointer_expression "*unaff_RBP" * identifier) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "thunk_FUN_002dac70();" (call_expression "thunk_FUN_002dac70()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_001b1c50(unaff_RBX + 0x4a0);" (call_expression "FUN_001b1c50(unaff_RBX + 0x4a0)" identifier (argument_list "(unaff_RBX + 0x4a0)" ( (binary_expression "unaff_RBX + 0x4a0" identifier + number_literal) ))) ;) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x468);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x468)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x468)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x468)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x468)" ( (binary_expression "unaff_RBX + 0x468" identifier + number_literal) ))))) ;) (while_statement "while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" while (parenthesized_expression "(unaff_R12 != puVar3)" ( (binary_expression "unaff_R12 != puVar3" identifier != identifier) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar3;" (assignment_expression "puVar3 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "plVar2 = *(long **)(unaff_RBX + 0x450);" (assignment_expression "plVar2 = *(long **)(unaff_RBX + 0x450)" identifier = (pointer_expression "*(long **)(unaff_RBX + 0x450)" * (cast_expression "(long **)(unaff_RBX + 0x450)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x450)" ( (binary_expression "unaff_RBX + 0x450" identifier + number_literal) ))))) ;) (for_statement "for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }" for ( (assignment_expression "plVar4 = *(long **)(unaff_RBX + 0x448)" identifier = (pointer_expression "*(long **)(unaff_RBX + 0x448)" * (cast_expression "(long **)(unaff_RBX + 0x448)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x448)" ( (binary_expression "unaff_RBX + 0x448" identifier + number_literal) ))))) ; (binary_expression "plVar2 != plVar4" identifier != identifier) ; (assignment_expression "plVar4 = plVar4 + 4" identifier = (binary_expression "plVar4 + 4" identifier + number_literal)) ) (compound_statement "{\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }" { (if_statement "if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }" if (parenthesized_expression "((long *)*plVar4 != plVar4 + 2)" ( (binary_expression "(long *)*plVar4 != plVar4 + 2" (cast_expression "(long *)*plVar4" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar4" * identifier)) != (binary_expression "plVar4 + 2" identifier + number_literal)) )) (compound_statement "{\n      FUN_002dac70();\n    }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) })) (if_statement "if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x448) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x448) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x448)" * (cast_expression "(long *)(unaff_RBX + 0x448)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x448)" ( (binary_expression "unaff_RBX + 0x448" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x420);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x420)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x420)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x420)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x420)" ( (binary_expression "unaff_RBX + 0x420" identifier + number_literal) ))))) ;) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" while (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" ( (binary_expression "puVar3 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" { (expression_statement "puVar1 = (undefined8 *)*puVar3;" (assignment_expression "puVar1 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (if_statement "if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }" if (parenthesized_expression "((undefined8 *)puVar3[1] != puVar3 + 3)" ( (binary_expression "(undefined8 *)puVar3[1] != puVar3 + 3" (cast_expression "(undefined8 *)puVar3[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[1]" identifier [ number_literal ])) != (binary_expression "puVar3 + 3" identifier + number_literal)) )) (compound_statement "{\n      FUN_002dac70();\n    }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_002dac70(puVar3);" (call_expression "FUN_002dac70(puVar3)" identifier (argument_list "(puVar3)" ( identifier ))) ;) (expression_statement "puVar3 = puVar1;" (assignment_expression "puVar3 = puVar1" identifier = identifier) ;) })) (expression_statement "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x410)" * (cast_expression "(void **)(unaff_RBX + 0x410)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x410)" ( (binary_expression "unaff_RBX + 0x410" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x418) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x418)" * (cast_expression "(long *)(unaff_RBX + 0x418)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x418)" ( (binary_expression "unaff_RBX + 0x418" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x428) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x428) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x428)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x428)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x428)" ( (binary_expression "unaff_RBX + 0x428" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x420) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x420) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x420)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x420)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x420)" ( (binary_expression "unaff_RBX + 0x420" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(unaff_R15 != *(long *)(unaff_RBX + 0x410))" ( (binary_expression "unaff_R15 != *(long *)(unaff_RBX + 0x410)" identifier != (pointer_expression "*(long *)(unaff_RBX + 0x410)" * (cast_expression "(long *)(unaff_RBX + 0x410)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x410)" ( (binary_expression "unaff_RBX + 0x410" identifier + number_literal) ))))) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));" (call_expression "FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0))" identifier (argument_list "(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0))" ( (binary_expression "unaff_RBX + 0x3e0" identifier + number_literal) , (pointer_expression "*(undefined8 *)(unaff_RBX + 0x3f0)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x3f0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x3f0)" ( (binary_expression "unaff_RBX + 0x3f0" identifier + number_literal) )))) ))) ;) (expression_statement "FUN_001b1bd0(unaff_RBX + 0x3b0);" (call_expression "FUN_001b1bd0(unaff_RBX + 0x3b0)" identifier (argument_list "(unaff_RBX + 0x3b0)" ( (binary_expression "unaff_RBX + 0x3b0" identifier + number_literal) ))) ;) (if_statement "if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x388) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x388) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x388)" * (cast_expression "(long *)(unaff_RBX + 0x388)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x388)" ( (binary_expression "unaff_RBX + 0x388" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x348) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x348) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x348)" * (cast_expression "(long *)(unaff_RBX + 0x348)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x348)" ( (binary_expression "unaff_RBX + 0x348" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x290) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x290) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x290)" * (cast_expression "(long *)(unaff_RBX + 0x290)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x290)" ( (binary_expression "unaff_RBX + 0x290" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x278) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x278) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x278)" * (cast_expression "(long *)(unaff_RBX + 0x278)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x278)" ( (binary_expression "unaff_RBX + 0x278" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x260) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x260) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x260)" * (cast_expression "(long *)(unaff_RBX + 0x260)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x260)" ( (binary_expression "unaff_RBX + 0x260" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x248) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x248) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x248)" * (cast_expression "(long *)(unaff_RBX + 0x248)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x248)" ( (binary_expression "unaff_RBX + 0x248" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x230) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x230) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x230)" * (cast_expression "(long *)(unaff_RBX + 0x230)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x230)" ( (binary_expression "unaff_RBX + 0x230" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x208);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x208)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x208)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x208)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x208)" ( (binary_expression "unaff_RBX + 0x208" identifier + number_literal) ))))) ;) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" while (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" ( (binary_expression "puVar3 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar3;" (assignment_expression "puVar3 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x1f8)" * (cast_expression "(void **)(unaff_RBX + 0x1f8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1f8)" ( (binary_expression "unaff_RBX + 0x1f8" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x200) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x200)" * (cast_expression "(long *)(unaff_RBX + 0x200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x200)" ( (binary_expression "unaff_RBX + 0x200" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x210) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x210) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x210)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x210)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x210)" ( (binary_expression "unaff_RBX + 0x210" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x208) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x208) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x208)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x208)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x208)" ( (binary_expression "unaff_RBX + 0x208" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(unaff_R14 != *(long *)(unaff_RBX + 0x1f8))" ( (binary_expression "unaff_R14 != *(long *)(unaff_RBX + 0x1f8)" identifier != (pointer_expression "*(long *)(unaff_RBX + 0x1f8)" * (cast_expression "(long *)(unaff_RBX + 0x1f8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1f8)" ( (binary_expression "unaff_RBX + 0x1f8" identifier + number_literal) ))))) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x1d0)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x1d0)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1d0)" ( (binary_expression "unaff_RBX + 0x1d0" identifier + number_literal) ))))) ;) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" while (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" ( (binary_expression "puVar3 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" { (expression_statement "puVar1 = (undefined8 *)*puVar3;" (assignment_expression "puVar1 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (expression_statement "FUN_001b1b90(puVar3 + 5);" (call_expression "FUN_001b1b90(puVar3 + 5)" identifier (argument_list "(puVar3 + 5)" ( (binary_expression "puVar3 + 5" identifier + number_literal) ))) ;) (if_statement "if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }" if (parenthesized_expression "((undefined8 *)puVar3[1] != puVar3 + 3)" ( (binary_expression "(undefined8 *)puVar3[1] != puVar3 + 3" (cast_expression "(undefined8 *)puVar3[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[1]" identifier [ number_literal ])) != (binary_expression "puVar3 + 3" identifier + number_literal)) )) (compound_statement "{\n      FUN_002dac70();\n    }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_002dac70(puVar3);" (call_expression "FUN_002dac70(puVar3)" identifier (argument_list "(puVar3)" ( identifier ))) ;) (expression_statement "puVar3 = puVar1;" (assignment_expression "puVar3 = puVar1" identifier = identifier) ;) })) (expression_statement "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x1c0)" * (cast_expression "(void **)(unaff_RBX + 0x1c0)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1c0)" ( (binary_expression "unaff_RBX + 0x1c0" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x1c8) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x1c8)" * (cast_expression "(long *)(unaff_RBX + 0x1c8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1c8)" ( (binary_expression "unaff_RBX + 0x1c8" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d8) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d8) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d8)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x1d8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1d8)" ( (binary_expression "unaff_RBX + 0x1d8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d0) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d0) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d0)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x1d0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1d0)" ( (binary_expression "unaff_RBX + 0x1d0" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(unaff_R13 != *(long *)(unaff_RBX + 0x1c0))" ( (binary_expression "unaff_R13 != *(long *)(unaff_RBX + 0x1c0)" identifier != (pointer_expression "*(long *)(unaff_RBX + 0x1c0)" * (cast_expression "(long *)(unaff_RBX + 0x1c0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1c0)" ( (binary_expression "unaff_RBX + 0x1c0" identifier + number_literal) ))))) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_0026c780(in_stack_00000010);" (call_expression "FUN_0026c780(in_stack_00000010)" identifier (argument_list "(in_stack_00000010)" ( identifier ))) ;) (expression_statement "FUN_0026c780(in_stack_00000008);" (call_expression "FUN_0026c780(in_stack_00000008)" identifier (argument_list "(in_stack_00000008)" ( identifier ))) ;) (expression_statement "FUN_0026c780(unaff_retaddr);" (call_expression "FUN_0026c780(unaff_retaddr)" identifier (argument_list "(unaff_retaddr)" ( identifier ))) ;) comment (expression_statement "FUN_003688e0(uStack0000000000000028);" (call_expression "FUN_003688e0(uStack0000000000000028)" identifier (argument_list "(uStack0000000000000028)" ( identifier ))) ;) })))
(translation_unit "void FUN_0014879a(void)\n\n{\n  undefined8 in_RAX;\n  long unaff_RBX;\n  undefined8 *unaff_RBP;\n  int __in_chrg;\n  undefined8 uVar1;\n  undefined8 *puVar2;\n  undefined8 *unaff_R12;\n  undefined8 *puVar3;\n  void *unaff_R13;\n  void *unaff_R14;\n  void *unaff_R15;\n  Stringpool_template<char> *unaff_retaddr;\n  Stringpool_template<char> *in_stack_00000008;\n  Stringpool_template<char> *in_stack_00000010;\n  void *in_stack_00000018;\n  void *in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  operator_delete(in_stack_00000018,0x90);\n  if (in_stack_00000020 != (void *)unaff_RBP[3]) {\n    operator_delete((void *)unaff_RBP[3]);\n  }\n  if ((void *)*unaff_RBP != (void *)0x0) {\n    operator_delete((void *)*unaff_RBP);\n  }\n  operator_delete(unaff_RBP,0x80);\n  std::\n  _Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>\n  ::_M_erase((_Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>\n              *)(unaff_RBX + 0x4a0),*(_Link_type *)(unaff_RBX + 0x4b0));\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar2) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x450);\n  for (puVar3 = *(undefined8 **)(unaff_RBX + 0x448); puVar2 != puVar3; puVar3 = puVar3 + 4) {\n    if ((undefined8 *)*puVar3 != puVar3 + 2) {\n      operator_delete((undefined8 *)*puVar3);\n    }\n  }\n  if (*(void **)(unaff_RBX + 0x448) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x448));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(void **)(unaff_RBX + 0x410)) {\n    operator_delete(*(void **)(unaff_RBX + 0x410));\n  }\n  std::\n  _Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n  ::_M_erase((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0));\n  std::\n  _Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n  ::_M_erase((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0));\n  if (*(void **)(unaff_RBX + 0x388) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x388));\n  }\n  if (*(void **)(unaff_RBX + 0x348) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x348));\n  }\n  if (*(void **)(unaff_RBX + 0x290) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x290));\n  }\n  if (*(void **)(unaff_RBX + 0x278) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x278));\n  }\n  if (*(void **)(unaff_RBX + 0x260) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x260));\n  }\n  if (*(void **)(unaff_RBX + 0x248) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x248));\n  }\n  if (*(void **)(unaff_RBX + 0x230) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x230));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  uVar1 = 0;\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(void **)(unaff_RBX + 0x1f8)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1f8));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    gold::Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  __in_chrg = 0;\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(void **)(unaff_RBX + 0x1c0)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1c0));\n  }\n  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000010,__in_chrg);\n  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000008,__in_chrg);\n  gold::Stringpool_template<char>::~Stringpool_template(unaff_retaddr,__in_chrg);\n                    /* WARNING: Subroutine does not return */\n  _Unwind_Resume(uStack0000000000000028);\n}\n\n" (function_definition "void FUN_0014879a(void)\n\n{\n  undefined8 in_RAX;\n  long unaff_RBX;\n  undefined8 *unaff_RBP;\n  int __in_chrg;\n  undefined8 uVar1;\n  undefined8 *puVar2;\n  undefined8 *unaff_R12;\n  undefined8 *puVar3;\n  void *unaff_R13;\n  void *unaff_R14;\n  void *unaff_R15;\n  Stringpool_template<char> *unaff_retaddr;\n  Stringpool_template<char> *in_stack_00000008;\n  Stringpool_template<char> *in_stack_00000010;\n  void *in_stack_00000018;\n  void *in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  operator_delete(in_stack_00000018,0x90);\n  if (in_stack_00000020 != (void *)unaff_RBP[3]) {\n    operator_delete((void *)unaff_RBP[3]);\n  }\n  if ((void *)*unaff_RBP != (void *)0x0) {\n    operator_delete((void *)*unaff_RBP);\n  }\n  operator_delete(unaff_RBP,0x80);\n  std::\n  _Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>\n  ::_M_erase((_Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>\n              *)(unaff_RBX + 0x4a0),*(_Link_type *)(unaff_RBX + 0x4b0));\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar2) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x450);\n  for (puVar3 = *(undefined8 **)(unaff_RBX + 0x448); puVar2 != puVar3; puVar3 = puVar3 + 4) {\n    if ((undefined8 *)*puVar3 != puVar3 + 2) {\n      operator_delete((undefined8 *)*puVar3);\n    }\n  }\n  if (*(void **)(unaff_RBX + 0x448) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x448));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(void **)(unaff_RBX + 0x410)) {\n    operator_delete(*(void **)(unaff_RBX + 0x410));\n  }\n  std::\n  _Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n  ::_M_erase((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0));\n  std::\n  _Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n  ::_M_erase((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0));\n  if (*(void **)(unaff_RBX + 0x388) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x388));\n  }\n  if (*(void **)(unaff_RBX + 0x348) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x348));\n  }\n  if (*(void **)(unaff_RBX + 0x290) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x290));\n  }\n  if (*(void **)(unaff_RBX + 0x278) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x278));\n  }\n  if (*(void **)(unaff_RBX + 0x260) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x260));\n  }\n  if (*(void **)(unaff_RBX + 0x248) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x248));\n  }\n  if (*(void **)(unaff_RBX + 0x230) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x230));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  uVar1 = 0;\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(void **)(unaff_RBX + 0x1f8)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1f8));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    gold::Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  __in_chrg = 0;\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(void **)(unaff_RBX + 0x1c0)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1c0));\n  }\n  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000010,__in_chrg);\n  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000008,__in_chrg);\n  gold::Stringpool_template<char>::~Stringpool_template(unaff_retaddr,__in_chrg);\n                    /* WARNING: Subroutine does not return */\n  _Unwind_Resume(uStack0000000000000028);\n}" primitive_type (function_declarator "FUN_0014879a(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined8 in_RAX;\n  long unaff_RBX;\n  undefined8 *unaff_RBP;\n  int __in_chrg;\n  undefined8 uVar1;\n  undefined8 *puVar2;\n  undefined8 *unaff_R12;\n  undefined8 *puVar3;\n  void *unaff_R13;\n  void *unaff_R14;\n  void *unaff_R15;\n  Stringpool_template<char> *unaff_retaddr;\n  Stringpool_template<char> *in_stack_00000008;\n  Stringpool_template<char> *in_stack_00000010;\n  void *in_stack_00000018;\n  void *in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  operator_delete(in_stack_00000018,0x90);\n  if (in_stack_00000020 != (void *)unaff_RBP[3]) {\n    operator_delete((void *)unaff_RBP[3]);\n  }\n  if ((void *)*unaff_RBP != (void *)0x0) {\n    operator_delete((void *)*unaff_RBP);\n  }\n  operator_delete(unaff_RBP,0x80);\n  std::\n  _Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>\n  ::_M_erase((_Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>\n              *)(unaff_RBX + 0x4a0),*(_Link_type *)(unaff_RBX + 0x4b0));\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar2) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x450);\n  for (puVar3 = *(undefined8 **)(unaff_RBX + 0x448); puVar2 != puVar3; puVar3 = puVar3 + 4) {\n    if ((undefined8 *)*puVar3 != puVar3 + 2) {\n      operator_delete((undefined8 *)*puVar3);\n    }\n  }\n  if (*(void **)(unaff_RBX + 0x448) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x448));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(void **)(unaff_RBX + 0x410)) {\n    operator_delete(*(void **)(unaff_RBX + 0x410));\n  }\n  std::\n  _Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n  ::_M_erase((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0));\n  std::\n  _Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n  ::_M_erase((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0));\n  if (*(void **)(unaff_RBX + 0x388) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x388));\n  }\n  if (*(void **)(unaff_RBX + 0x348) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x348));\n  }\n  if (*(void **)(unaff_RBX + 0x290) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x290));\n  }\n  if (*(void **)(unaff_RBX + 0x278) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x278));\n  }\n  if (*(void **)(unaff_RBX + 0x260) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x260));\n  }\n  if (*(void **)(unaff_RBX + 0x248) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x248));\n  }\n  if (*(void **)(unaff_RBX + 0x230) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x230));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  uVar1 = 0;\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(void **)(unaff_RBX + 0x1f8)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1f8));\n  }\n  puVar2 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    gold::Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }\n  __in_chrg = 0;\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(void **)(unaff_RBX + 0x1c0)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1c0));\n  }\n  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000010,__in_chrg);\n  gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000008,__in_chrg);\n  gold::Stringpool_template<char>::~Stringpool_template(unaff_retaddr,__in_chrg);\n                    /* WARNING: Subroutine does not return */\n  _Unwind_Resume(uStack0000000000000028);\n}" { (declaration "undefined8 in_RAX;" type_identifier identifier ;) (declaration "long unaff_RBX;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 *unaff_RBP;" type_identifier (pointer_declarator "*unaff_RBP" * identifier) ;) (declaration "int __in_chrg;" primitive_type identifier ;) (declaration "undefined8 uVar1;" type_identifier identifier ;) (declaration "undefined8 *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined8 *unaff_R12;" type_identifier (pointer_declarator "*unaff_R12" * identifier) ;) (declaration "undefined8 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "void *unaff_R13;" primitive_type (pointer_declarator "*unaff_R13" * identifier) ;) (declaration "void *unaff_R14;" primitive_type (pointer_declarator "*unaff_R14" * identifier) ;) (declaration "void *unaff_R15;" primitive_type (pointer_declarator "*unaff_R15" * identifier) ;) (expression_statement "Stringpool_template<char> *unaff_retaddr;" (binary_expression "Stringpool_template<char> *unaff_retaddr" (binary_expression "Stringpool_template<char" identifier < identifier) > (pointer_expression "*unaff_retaddr" * identifier)) ;) (expression_statement "Stringpool_template<char> *in_stack_00000008;" (binary_expression "Stringpool_template<char> *in_stack_00000008" (binary_expression "Stringpool_template<char" identifier < identifier) > (pointer_expression "*in_stack_00000008" * identifier)) ;) (expression_statement "Stringpool_template<char> *in_stack_00000010;" (binary_expression "Stringpool_template<char> *in_stack_00000010" (binary_expression "Stringpool_template<char" identifier < identifier) > (pointer_expression "*in_stack_00000010" * identifier)) ;) (declaration "void *in_stack_00000018;" primitive_type (pointer_declarator "*in_stack_00000018" * identifier) ;) (declaration "void *in_stack_00000020;" primitive_type (pointer_declarator "*in_stack_00000020" * identifier) ;) (declaration "undefined8 uStack0000000000000028;" type_identifier identifier ;) (expression_statement "uStack0000000000000028 = in_RAX;" (assignment_expression "uStack0000000000000028 = in_RAX" identifier = identifier) ;) (expression_statement "operator_delete(in_stack_00000018,0x90);" (call_expression "operator_delete(in_stack_00000018,0x90)" identifier (argument_list "(in_stack_00000018,0x90)" ( identifier , number_literal ))) ;) (if_statement "if (in_stack_00000020 != (void *)unaff_RBP[3]) {\n    operator_delete((void *)unaff_RBP[3]);\n  }" if (parenthesized_expression "(in_stack_00000020 != (void *)unaff_RBP[3])" ( (binary_expression "in_stack_00000020 != (void *)unaff_RBP[3]" identifier != (cast_expression "(void *)unaff_RBP[3]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "unaff_RBP[3]" identifier [ number_literal ]))) )) (compound_statement "{\n    operator_delete((void *)unaff_RBP[3]);\n  }" { (expression_statement "operator_delete((void *)unaff_RBP[3]);" (call_expression "operator_delete((void *)unaff_RBP[3])" identifier (argument_list "((void *)unaff_RBP[3])" ( (cast_expression "(void *)unaff_RBP[3]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "unaff_RBP[3]" identifier [ number_literal ])) ))) ;) })) (if_statement "if ((void *)*unaff_RBP != (void *)0x0) {\n    operator_delete((void *)*unaff_RBP);\n  }" if (parenthesized_expression "((void *)*unaff_RBP != (void *)0x0)" ( (binary_expression "(void *)*unaff_RBP != (void *)0x0" (cast_expression "(void *)*unaff_RBP" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*unaff_RBP" * identifier)) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete((void *)*unaff_RBP);\n  }" { (expression_statement "operator_delete((void *)*unaff_RBP);" (call_expression "operator_delete((void *)*unaff_RBP)" identifier (argument_list "((void *)*unaff_RBP)" ( (cast_expression "(void *)*unaff_RBP" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*unaff_RBP" * identifier)) ))) ;) })) (expression_statement "operator_delete(unaff_RBP,0x80);" (call_expression "operator_delete(unaff_RBP,0x80)" identifier (argument_list "(unaff_RBP,0x80)" ( identifier , number_literal ))) ;) (ERROR "std::\n  _Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>_>\n  ::_M_erase((_Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std::allocator<std::pair<unsigned_int_const,_gold::" (comma_expression "std::\n  _Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std" identifier (ERROR "::\n  _Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>" : : (comma_expression "_Rb_tree<unsigned_int,_std" (binary_expression "_Rb_tree<unsigned_int" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int_const,_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Layout::Gnu_property>,_std" identifier (ERROR "::Gnu_property>" : : identifier >) , identifier) : : (binary_expression "_Select1st<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Layout::Gnu_property>_>,_std" identifier (ERROR "::Gnu_property>_>" : : (binary_expression "Gnu_property>_" identifier > identifier) >) , identifier) : : (binary_expression "less<unsigned_int" identifier < identifier) >) , identifier) : : identifier < identifier : : (comma_expression "pair<unsigned_int_const,_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Layout::Gnu_property>_>_>\n  ::_M_erase((_Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>,_std" identifier (ERROR "::Gnu_property>_>_>\n  ::_M_erase((_Rb_tree<unsigned_int,_std::pair<unsigned_int_const,_gold::Layout::Gnu_property>,_std::_Select1st<std::pair<unsigned_int_const,_gold::Layout::Gnu_property>_>,_std::less<unsigned_int>" : : (binary_expression "Gnu_property>_>_" (binary_expression "Gnu_property>_" identifier > identifier) > identifier) > : : identifier ( ( (comma_expression "_Rb_tree<unsigned_int,_std" (binary_expression "_Rb_tree<unsigned_int" identifier < identifier) , identifier) : : (comma_expression "pair<unsigned_int_const,_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Layout::Gnu_property>,_std" identifier (ERROR "::Gnu_property>" : : identifier >) , identifier) : : (binary_expression "_Select1st<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : : (comma_expression "Layout::Gnu_property>_>,_std" identifier (ERROR "::Gnu_property>_>" : : (binary_expression "Gnu_property>_" identifier > identifier) >) , identifier) : : (binary_expression "less<unsigned_int" identifier < identifier) >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "pair<unsigned_int_const,_gold" (binary_expression "pair<unsigned_int_const" identifier < identifier) , identifier) : :) (labeled_statement "Layout::Gnu_property>_>_>\n              *)(unaff_RBX + 0x4a0),*(_Link_type *)(unaff_RBX + 0x4b0));" statement_identifier : (ERROR ":" :) (expression_statement "Gnu_property>_>_>\n              *)(unaff_RBX + 0x4a0),*(_Link_type *)(unaff_RBX + 0x4b0));" (comma_expression "Gnu_property>_>_>\n              *)(unaff_RBX + 0x4a0),*(_Link_type *)(unaff_RBX + 0x4b0)" (binary_expression "Gnu_property>_>_>\n              *)(unaff_RBX + 0x4a0" (binary_expression "Gnu_property>_>_" (binary_expression "Gnu_property>_" identifier > identifier) > identifier) > (binary_expression "*)(unaff_RBX + 0x4a0" (pointer_expression "*)(unaff_RBX" * (ERROR ")(" ) () identifier) + number_literal)) (ERROR ")" )) , (pointer_expression "*(_Link_type *)(unaff_RBX + 0x4b0)" * (cast_expression "(_Link_type *)(unaff_RBX + 0x4b0)" ( (type_descriptor "_Link_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x4b0)" ( (binary_expression "unaff_RBX + 0x4b0" identifier + number_literal) ))))) (ERROR ")" )) ;)) (expression_statement "puVar2 = *(undefined8 **)(unaff_RBX + 0x468);" (assignment_expression "puVar2 = *(undefined8 **)(unaff_RBX + 0x468)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x468)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x468)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x468)" ( (binary_expression "unaff_RBX + 0x468" identifier + number_literal) ))))) ;) (while_statement "while (unaff_R12 != puVar2) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" while (parenthesized_expression "(unaff_R12 != puVar2)" ( (binary_expression "unaff_R12 != puVar2" identifier != identifier) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar2;" (assignment_expression "puVar3 = (undefined8 *)*puVar2" identifier = (cast_expression "(undefined8 *)*puVar2" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar2" * identifier))) ;) (expression_statement "operator_delete(puVar2);" (call_expression "operator_delete(puVar2)" identifier (argument_list "(puVar2)" ( identifier ))) ;) (expression_statement "puVar2 = puVar3;" (assignment_expression "puVar2 = puVar3" identifier = identifier) ;) })) (expression_statement "puVar2 = *(undefined8 **)(unaff_RBX + 0x450);" (assignment_expression "puVar2 = *(undefined8 **)(unaff_RBX + 0x450)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x450)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x450)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x450)" ( (binary_expression "unaff_RBX + 0x450" identifier + number_literal) ))))) ;) (for_statement "for (puVar3 = *(undefined8 **)(unaff_RBX + 0x448); puVar2 != puVar3; puVar3 = puVar3 + 4) {\n    if ((undefined8 *)*puVar3 != puVar3 + 2) {\n      operator_delete((undefined8 *)*puVar3);\n    }\n  }" for ( (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x448)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x448)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x448)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x448)" ( (binary_expression "unaff_RBX + 0x448" identifier + number_literal) ))))) ; (binary_expression "puVar2 != puVar3" identifier != identifier) ; (assignment_expression "puVar3 = puVar3 + 4" identifier = (binary_expression "puVar3 + 4" identifier + number_literal)) ) (compound_statement "{\n    if ((undefined8 *)*puVar3 != puVar3 + 2) {\n      operator_delete((undefined8 *)*puVar3);\n    }\n  }" { (if_statement "if ((undefined8 *)*puVar3 != puVar3 + 2) {\n      operator_delete((undefined8 *)*puVar3);\n    }" if (parenthesized_expression "((undefined8 *)*puVar3 != puVar3 + 2)" ( (binary_expression "(undefined8 *)*puVar3 != puVar3 + 2" (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier)) != (binary_expression "puVar3 + 2" identifier + number_literal)) )) (compound_statement "{\n      operator_delete((undefined8 *)*puVar3);\n    }" { (expression_statement "operator_delete((undefined8 *)*puVar3);" (call_expression "operator_delete((undefined8 *)*puVar3)" identifier (argument_list "((undefined8 *)*puVar3)" ( (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier)) ))) ;) })) })) (if_statement "if (*(void **)(unaff_RBX + 0x448) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x448));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x448) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x448) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x448)" * (cast_expression "(void **)(unaff_RBX + 0x448)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x448)" ( (binary_expression "unaff_RBX + 0x448" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x448));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x448));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x448))" identifier (argument_list "(*(void **)(unaff_RBX + 0x448))" ( (pointer_expression "*(void **)(unaff_RBX + 0x448)" * (cast_expression "(void **)(unaff_RBX + 0x448)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x448)" ( (binary_expression "unaff_RBX + 0x448" identifier + number_literal) )))) ))) ;) })) (expression_statement "puVar2 = *(undefined8 **)(unaff_RBX + 0x420);" (assignment_expression "puVar2 = *(undefined8 **)(unaff_RBX + 0x420)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x420)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x420)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x420)" ( (binary_expression "unaff_RBX + 0x420" identifier + number_literal) ))))) ;) (while_statement "while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" while (parenthesized_expression "(puVar2 != (undefined8 *)0x0)" ( (binary_expression "puVar2 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar2;\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar2;" (assignment_expression "puVar3 = (undefined8 *)*puVar2" identifier = (cast_expression "(undefined8 *)*puVar2" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar2" * identifier))) ;) (if_statement "if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }" if (parenthesized_expression "((undefined8 *)puVar2[1] != puVar2 + 3)" ( (binary_expression "(undefined8 *)puVar2[1] != puVar2 + 3" (cast_expression "(undefined8 *)puVar2[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar2[1]" identifier [ number_literal ])) != (binary_expression "puVar2 + 3" identifier + number_literal)) )) (compound_statement "{\n      operator_delete((undefined8 *)puVar2[1]);\n    }" { (expression_statement "operator_delete((undefined8 *)puVar2[1]);" (call_expression "operator_delete((undefined8 *)puVar2[1])" identifier (argument_list "((undefined8 *)puVar2[1])" ( (cast_expression "(undefined8 *)puVar2[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar2[1]" identifier [ number_literal ])) ))) ;) })) (expression_statement "operator_delete(puVar2);" (call_expression "operator_delete(puVar2)" identifier (argument_list "(puVar2)" ( identifier ))) ;) (expression_statement "puVar2 = puVar3;" (assignment_expression "puVar2 = puVar3" identifier = identifier) ;) })) (expression_statement "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x410)" * (cast_expression "(void **)(unaff_RBX + 0x410)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x410)" ( (binary_expression "unaff_RBX + 0x410" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x418) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x418)" * (cast_expression "(long *)(unaff_RBX + 0x418)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x418)" ( (binary_expression "unaff_RBX + 0x418" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x428) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x428) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x428)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x428)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x428)" ( (binary_expression "unaff_RBX + 0x428" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x420) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x420) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x420)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x420)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x420)" ( (binary_expression "unaff_RBX + 0x420" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R15 != *(void **)(unaff_RBX + 0x410)) {\n    operator_delete(*(void **)(unaff_RBX + 0x410));\n  }" if (parenthesized_expression "(unaff_R15 != *(void **)(unaff_RBX + 0x410))" ( (binary_expression "unaff_R15 != *(void **)(unaff_RBX + 0x410)" identifier != (pointer_expression "*(void **)(unaff_RBX + 0x410)" * (cast_expression "(void **)(unaff_RBX + 0x410)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x410)" ( (binary_expression "unaff_RBX + 0x410" identifier + number_literal) ))))) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x410));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x410));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x410))" identifier (argument_list "(*(void **)(unaff_RBX + 0x410))" ( (pointer_expression "*(void **)(unaff_RBX + 0x410)" * (cast_expression "(void **)(unaff_RBX + 0x410)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x410)" ( (binary_expression "unaff_RBX + 0x410" identifier + number_literal) )))) ))) ;) })) (ERROR "std::\n  _Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::" (comma_expression "std::\n  _Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std" identifier (ERROR "::\n  _Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>" : : (binary_expression "_Rb_tree<std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : identifier * , identifier >) , identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_gold" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (comma_expression "Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold" identifier (ERROR "::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>" : : (comma_expression "Unique_segment_info*>,_std" identifier (ERROR "*>" * >) , identifier) : : (binary_expression "_Select1st<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : identifier * , identifier >) , identifier) : : (binary_expression "Layout::Unique_segment_info*>_>,_std" (binary_expression "Layout::Unique_segment_info*>_" identifier (ERROR "::Unique_segment_info*" : : identifier *) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "less<std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_gold" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : :) (expression_statement "Layout::Unique_segment_info*>_>_>\n  ::_M_erase((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0));" (binary_expression "Layout::Unique_segment_info*>_>_>\n  ::_M_erase((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0))" (binary_expression "Layout::Unique_segment_info*>_>_" (binary_expression "Layout::Unique_segment_info*>_" identifier (ERROR "::Unique_segment_info*" : : identifier *) > identifier) > identifier) > (ERROR "::" : :) (call_expression "_M_erase((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0))" identifier (argument_list "((_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0),*(_Link_type *)(unaff_RBX + 0x3f0))" ( (call_expression "(_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)(unaff_RBX + 0x3e0)" (parenthesized_expression "(_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>_>\n              *)" ( (ERROR "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std::_Select1st<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>_>,_std::less<std::pair<const_gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::" (comma_expression "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold::Layout::Unique_segment_info*>,_std" (binary_expression "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int>,_gold" (binary_expression "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold::Relobj*,_unsigned_int" (binary_expression "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<const_gold" (binary_expression "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std::pair<const_std" (binary_expression "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Rb_tree<std::pair<const_gold::Relobj*,_unsigned_int" (binary_expression "_Rb_tree<std::pair<const_gold" (binary_expression "_Rb_tree<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::Layout::Unique_segment_info*>" : : identifier : : identifier * >) , identifier) : : (binary_expression "_Select1st<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>,_gold" identifier > (ERROR "," ,) identifier) : : identifier : : (binary_expression "Unique_segment_info*>_>,_std" (binary_expression "Unique_segment_info*>_" identifier * (ERROR ">" >) identifier) > (ERROR "," ,) identifier) : : (binary_expression "less<std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_std" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<const_gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>,_gold" identifier > (ERROR "," ,) identifier) : : identifier : :) (binary_expression "Unique_segment_info*>_>_>\n              *" (binary_expression "Unique_segment_info*>_>_" (binary_expression "Unique_segment_info*>_" identifier * (ERROR ">" >) identifier) > identifier) > (pointer_expression "*" * identifier)) )) (argument_list "(unaff_RBX + 0x3e0)" ( (binary_expression "unaff_RBX + 0x3e0" identifier + number_literal) ))) , (pointer_expression "*(_Link_type *)(unaff_RBX + 0x3f0)" * (cast_expression "(_Link_type *)(unaff_RBX + 0x3f0)" ( (type_descriptor "_Link_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x3f0)" ( (binary_expression "unaff_RBX + 0x3f0" identifier + number_literal) )))) )))) ;) (ERROR "std::\n  _Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::" (comma_expression "std::\n  _Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std" identifier (ERROR "::\n  _Rb_tree<std::pair<gold::Relobj*,_unsigned_int>" : : (binary_expression "_Rb_tree<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , identifier >) , identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_unsigned_int>,_std" (binary_expression "Relobj*,_unsigned_int>,_unsigned_int" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (binary_expression "_Select1st<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int>,_unsigned_int" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "less<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : :) (expression_statement "Relobj*,_unsigned_int>,_unsigned_int>_>_>\n  ::_M_erase((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0));" (binary_expression "Relobj*,_unsigned_int>,_unsigned_int>_>_>\n  ::_M_erase((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0))" (binary_expression "Relobj*,_unsigned_int>,_unsigned_int>_>_" (binary_expression "Relobj*,_unsigned_int>,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int>,_unsigned_int" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) > identifier) > identifier) > (ERROR "::" : :) (call_expression "_M_erase((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0))" identifier (argument_list "((_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0),*(_Link_type *)(unaff_RBX + 0x3c0))" ( (call_expression "(_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)(unaff_RBX + 0x3b0)" (parenthesized_expression "(_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *)" ( (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_>\n              *" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>_" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std::pair<gold" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<const_std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_>,_std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int>_" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std::pair<gold" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std::less<std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_>,_std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>_" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std::pair<gold" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std::pair<const_std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std::_Select1st<std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int>,_std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Rb_tree<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Rb_tree<std::pair<gold" (binary_expression "_Rb_tree<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::_Select1st" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::less" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) > identifier) > identifier) > (pointer_expression "*" * identifier)) )) (argument_list "(unaff_RBX + 0x3b0)" ( (binary_expression "unaff_RBX + 0x3b0" identifier + number_literal) ))) , (pointer_expression "*(_Link_type *)(unaff_RBX + 0x3c0)" * (cast_expression "(_Link_type *)(unaff_RBX + 0x3c0)" ( (type_descriptor "_Link_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x3c0)" ( (binary_expression "unaff_RBX + 0x3c0" identifier + number_literal) )))) )))) ;) (if_statement "if (*(void **)(unaff_RBX + 0x388) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x388));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x388) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x388) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x388)" * (cast_expression "(void **)(unaff_RBX + 0x388)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x388)" ( (binary_expression "unaff_RBX + 0x388" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x388));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x388));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x388))" identifier (argument_list "(*(void **)(unaff_RBX + 0x388))" ( (pointer_expression "*(void **)(unaff_RBX + 0x388)" * (cast_expression "(void **)(unaff_RBX + 0x388)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x388)" ( (binary_expression "unaff_RBX + 0x388" identifier + number_literal) )))) ))) ;) })) (if_statement "if (*(void **)(unaff_RBX + 0x348) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x348));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x348) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x348) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x348)" * (cast_expression "(void **)(unaff_RBX + 0x348)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x348)" ( (binary_expression "unaff_RBX + 0x348" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x348));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x348));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x348))" identifier (argument_list "(*(void **)(unaff_RBX + 0x348))" ( (pointer_expression "*(void **)(unaff_RBX + 0x348)" * (cast_expression "(void **)(unaff_RBX + 0x348)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x348)" ( (binary_expression "unaff_RBX + 0x348" identifier + number_literal) )))) ))) ;) })) (if_statement "if (*(void **)(unaff_RBX + 0x290) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x290));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x290) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x290) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x290)" * (cast_expression "(void **)(unaff_RBX + 0x290)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x290)" ( (binary_expression "unaff_RBX + 0x290" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x290));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x290));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x290))" identifier (argument_list "(*(void **)(unaff_RBX + 0x290))" ( (pointer_expression "*(void **)(unaff_RBX + 0x290)" * (cast_expression "(void **)(unaff_RBX + 0x290)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x290)" ( (binary_expression "unaff_RBX + 0x290" identifier + number_literal) )))) ))) ;) })) (if_statement "if (*(void **)(unaff_RBX + 0x278) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x278));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x278) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x278) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x278)" * (cast_expression "(void **)(unaff_RBX + 0x278)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x278)" ( (binary_expression "unaff_RBX + 0x278" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x278));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x278));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x278))" identifier (argument_list "(*(void **)(unaff_RBX + 0x278))" ( (pointer_expression "*(void **)(unaff_RBX + 0x278)" * (cast_expression "(void **)(unaff_RBX + 0x278)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x278)" ( (binary_expression "unaff_RBX + 0x278" identifier + number_literal) )))) ))) ;) })) (if_statement "if (*(void **)(unaff_RBX + 0x260) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x260));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x260) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x260) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x260)" * (cast_expression "(void **)(unaff_RBX + 0x260)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x260)" ( (binary_expression "unaff_RBX + 0x260" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x260));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x260));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x260))" identifier (argument_list "(*(void **)(unaff_RBX + 0x260))" ( (pointer_expression "*(void **)(unaff_RBX + 0x260)" * (cast_expression "(void **)(unaff_RBX + 0x260)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x260)" ( (binary_expression "unaff_RBX + 0x260" identifier + number_literal) )))) ))) ;) })) (if_statement "if (*(void **)(unaff_RBX + 0x248) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x248));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x248) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x248) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x248)" * (cast_expression "(void **)(unaff_RBX + 0x248)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x248)" ( (binary_expression "unaff_RBX + 0x248" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x248));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x248));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x248))" identifier (argument_list "(*(void **)(unaff_RBX + 0x248))" ( (pointer_expression "*(void **)(unaff_RBX + 0x248)" * (cast_expression "(void **)(unaff_RBX + 0x248)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x248)" ( (binary_expression "unaff_RBX + 0x248" identifier + number_literal) )))) ))) ;) })) (if_statement "if (*(void **)(unaff_RBX + 0x230) != (void *)0x0) {\n    operator_delete(*(void **)(unaff_RBX + 0x230));\n  }" if (parenthesized_expression "(*(void **)(unaff_RBX + 0x230) != (void *)0x0)" ( (binary_expression "*(void **)(unaff_RBX + 0x230) != (void *)0x0" (pointer_expression "*(void **)(unaff_RBX + 0x230)" * (cast_expression "(void **)(unaff_RBX + 0x230)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x230)" ( (binary_expression "unaff_RBX + 0x230" identifier + number_literal) )))) != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x230));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x230));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x230))" identifier (argument_list "(*(void **)(unaff_RBX + 0x230))" ( (pointer_expression "*(void **)(unaff_RBX + 0x230)" * (cast_expression "(void **)(unaff_RBX + 0x230)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x230)" ( (binary_expression "unaff_RBX + 0x230" identifier + number_literal) )))) ))) ;) })) (expression_statement "puVar2 = *(undefined8 **)(unaff_RBX + 0x208);" (assignment_expression "puVar2 = *(undefined8 **)(unaff_RBX + 0x208)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x208)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x208)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x208)" ( (binary_expression "unaff_RBX + 0x208" identifier + number_literal) ))))) ;) (while_statement "while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" while (parenthesized_expression "(puVar2 != (undefined8 *)0x0)" ( (binary_expression "puVar2 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar2;\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar2;" (assignment_expression "puVar3 = (undefined8 *)*puVar2" identifier = (cast_expression "(undefined8 *)*puVar2" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar2" * identifier))) ;) (expression_statement "operator_delete(puVar2);" (call_expression "operator_delete(puVar2)" identifier (argument_list "(puVar2)" ( identifier ))) ;) (expression_statement "puVar2 = puVar3;" (assignment_expression "puVar2 = puVar3" identifier = identifier) ;) })) (expression_statement "uVar1 = 0;" (assignment_expression "uVar1 = 0" identifier = number_literal) ;) (expression_statement "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x1f8)" * (cast_expression "(void **)(unaff_RBX + 0x1f8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1f8)" ( (binary_expression "unaff_RBX + 0x1f8" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x200) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x200)" * (cast_expression "(long *)(unaff_RBX + 0x200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x200)" ( (binary_expression "unaff_RBX + 0x200" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x210) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x210) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x210)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x210)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x210)" ( (binary_expression "unaff_RBX + 0x210" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x208) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x208) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x208)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x208)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x208)" ( (binary_expression "unaff_RBX + 0x208" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R14 != *(void **)(unaff_RBX + 0x1f8)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1f8));\n  }" if (parenthesized_expression "(unaff_R14 != *(void **)(unaff_RBX + 0x1f8))" ( (binary_expression "unaff_R14 != *(void **)(unaff_RBX + 0x1f8)" identifier != (pointer_expression "*(void **)(unaff_RBX + 0x1f8)" * (cast_expression "(void **)(unaff_RBX + 0x1f8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1f8)" ( (binary_expression "unaff_RBX + 0x1f8" identifier + number_literal) ))))) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x1f8));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x1f8));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x1f8))" identifier (argument_list "(*(void **)(unaff_RBX + 0x1f8))" ( (pointer_expression "*(void **)(unaff_RBX + 0x1f8)" * (cast_expression "(void **)(unaff_RBX + 0x1f8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1f8)" ( (binary_expression "unaff_RBX + 0x1f8" identifier + number_literal) )))) ))) ;) })) (expression_statement "puVar2 = *(undefined8 **)(unaff_RBX + 0x1d0);" (assignment_expression "puVar2 = *(undefined8 **)(unaff_RBX + 0x1d0)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x1d0)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x1d0)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1d0)" ( (binary_expression "unaff_RBX + 0x1d0" identifier + number_literal) ))))) ;) (while_statement "while (puVar2 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar2;\n    gold::Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" while (parenthesized_expression "(puVar2 != (undefined8 *)0x0)" ( (binary_expression "puVar2 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar2;\n    gold::Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);\n    if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }\n    operator_delete(puVar2);\n    puVar2 = puVar3;\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar2;" (assignment_expression "puVar3 = (undefined8 *)*puVar2" identifier = (cast_expression "(undefined8 *)*puVar2" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar2" * identifier))) ;) (labeled_statement "gold::Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);" statement_identifier : (ERROR ":" :) (labeled_statement "Kept_section::~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);" statement_identifier : (ERROR ":" :) (expression_statement "~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1);" (unary_expression "~Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1)" ~ (call_expression "Kept_section((Kept_section *)(puVar2 + 5),(int)uVar1)" identifier (argument_list "((Kept_section *)(puVar2 + 5),(int)uVar1)" ( (cast_expression "(Kept_section *)(puVar2 + 5)" ( (type_descriptor "Kept_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar2 + 5)" ( (binary_expression "puVar2 + 5" identifier + number_literal) ))) , (cast_expression "(int)uVar1" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;))) (if_statement "if ((undefined8 *)puVar2[1] != puVar2 + 3) {\n      operator_delete((undefined8 *)puVar2[1]);\n    }" if (parenthesized_expression "((undefined8 *)puVar2[1] != puVar2 + 3)" ( (binary_expression "(undefined8 *)puVar2[1] != puVar2 + 3" (cast_expression "(undefined8 *)puVar2[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar2[1]" identifier [ number_literal ])) != (binary_expression "puVar2 + 3" identifier + number_literal)) )) (compound_statement "{\n      operator_delete((undefined8 *)puVar2[1]);\n    }" { (expression_statement "operator_delete((undefined8 *)puVar2[1]);" (call_expression "operator_delete((undefined8 *)puVar2[1])" identifier (argument_list "((undefined8 *)puVar2[1])" ( (cast_expression "(undefined8 *)puVar2[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar2[1]" identifier [ number_literal ])) ))) ;) })) (expression_statement "operator_delete(puVar2);" (call_expression "operator_delete(puVar2)" identifier (argument_list "(puVar2)" ( identifier ))) ;) (expression_statement "puVar2 = puVar3;" (assignment_expression "puVar2 = puVar3" identifier = identifier) ;) })) (expression_statement "__in_chrg = 0;" (assignment_expression "__in_chrg = 0" identifier = number_literal) ;) (expression_statement "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x1c0)" * (cast_expression "(void **)(unaff_RBX + 0x1c0)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1c0)" ( (binary_expression "unaff_RBX + 0x1c0" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x1c8) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x1c8)" * (cast_expression "(long *)(unaff_RBX + 0x1c8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1c8)" ( (binary_expression "unaff_RBX + 0x1c8" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d8) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d8) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d8)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x1d8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1d8)" ( (binary_expression "unaff_RBX + 0x1d8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d0) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d0) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d0)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x1d0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1d0)" ( (binary_expression "unaff_RBX + 0x1d0" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R13 != *(void **)(unaff_RBX + 0x1c0)) {\n    operator_delete(*(void **)(unaff_RBX + 0x1c0));\n  }" if (parenthesized_expression "(unaff_R13 != *(void **)(unaff_RBX + 0x1c0))" ( (binary_expression "unaff_R13 != *(void **)(unaff_RBX + 0x1c0)" identifier != (pointer_expression "*(void **)(unaff_RBX + 0x1c0)" * (cast_expression "(void **)(unaff_RBX + 0x1c0)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1c0)" ( (binary_expression "unaff_RBX + 0x1c0" identifier + number_literal) ))))) )) (compound_statement "{\n    operator_delete(*(void **)(unaff_RBX + 0x1c0));\n  }" { (expression_statement "operator_delete(*(void **)(unaff_RBX + 0x1c0));" (call_expression "operator_delete(*(void **)(unaff_RBX + 0x1c0))" identifier (argument_list "(*(void **)(unaff_RBX + 0x1c0))" ( (pointer_expression "*(void **)(unaff_RBX + 0x1c0)" * (cast_expression "(void **)(unaff_RBX + 0x1c0)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1c0)" ( (binary_expression "unaff_RBX + 0x1c0" identifier + number_literal) )))) ))) ;) })) (labeled_statement "gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000010,__in_chrg);" statement_identifier (ERROR "::Stringpool_template<char>:" : : (binary_expression "Stringpool_template<char" identifier < identifier) > :) : (expression_statement "~Stringpool_template(in_stack_00000010,__in_chrg);" (unary_expression "~Stringpool_template(in_stack_00000010,__in_chrg)" ~ (call_expression "Stringpool_template(in_stack_00000010,__in_chrg)" identifier (argument_list "(in_stack_00000010,__in_chrg)" ( identifier , identifier )))) ;)) (labeled_statement "gold::Stringpool_template<char>::~Stringpool_template(in_stack_00000008,__in_chrg);" statement_identifier (ERROR "::Stringpool_template<char>:" : : (binary_expression "Stringpool_template<char" identifier < identifier) > :) : (expression_statement "~Stringpool_template(in_stack_00000008,__in_chrg);" (unary_expression "~Stringpool_template(in_stack_00000008,__in_chrg)" ~ (call_expression "Stringpool_template(in_stack_00000008,__in_chrg)" identifier (argument_list "(in_stack_00000008,__in_chrg)" ( identifier , identifier )))) ;)) (labeled_statement "gold::Stringpool_template<char>::~Stringpool_template(unaff_retaddr,__in_chrg);" statement_identifier (ERROR "::Stringpool_template<char>:" : : (binary_expression "Stringpool_template<char" identifier < identifier) > :) : (expression_statement "~Stringpool_template(unaff_retaddr,__in_chrg);" (unary_expression "~Stringpool_template(unaff_retaddr,__in_chrg)" ~ (call_expression "Stringpool_template(unaff_retaddr,__in_chrg)" identifier (argument_list "(unaff_retaddr,__in_chrg)" ( identifier , identifier )))) ;)) comment (expression_statement "_Unwind_Resume(uStack0000000000000028);" (call_expression "_Unwind_Resume(uStack0000000000000028)" identifier (argument_list "(uStack0000000000000028)" ( identifier ))) ;) })))
(translation_unit "void FUN_0014879a(void)\n\n{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    \n  FUN_003688e0(uStack0000000000000028);\n}\n\n" (function_definition "void FUN_0014879a(void)\n\n{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    \n  FUN_003688e0(uStack0000000000000028);\n}" primitive_type (function_declarator "FUN_0014879a(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    \n  FUN_003688e0(uStack0000000000000028);\n}" { (declaration "undefined8 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "undefined8 in_RAX;" type_identifier identifier ;) (declaration "long unaff_RBX;" (sized_type_specifier "long" long) identifier ;) (declaration "long *unaff_RBP;" (sized_type_specifier "long" long) (pointer_declarator "*unaff_RBP" * identifier) ;) (declaration "undefined8 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined8 *unaff_R12;" type_identifier (pointer_declarator "*unaff_R12" * identifier) ;) (declaration "long *plVar4;" (sized_type_specifier "long" long) (pointer_declarator "*plVar4" * identifier) ;) (declaration "long unaff_R13;" (sized_type_specifier "long" long) identifier ;) (declaration "long unaff_R14;" (sized_type_specifier "long" long) identifier ;) (declaration "long unaff_R15;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 unaff_retaddr;" type_identifier identifier ;) (declaration "undefined8 in_stack_00000008;" type_identifier identifier ;) (declaration "undefined8 in_stack_00000010;" type_identifier identifier ;) (declaration "undefined8 in_stack_00000018;" type_identifier identifier ;) (declaration "long in_stack_00000020;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uStack0000000000000028;" type_identifier identifier ;) (expression_statement "uStack0000000000000028 = in_RAX;" (assignment_expression "uStack0000000000000028 = in_RAX" identifier = identifier) ;) (expression_statement "thunk_FUN_002dac70(in_stack_00000018,0x90);" (call_expression "thunk_FUN_002dac70(in_stack_00000018,0x90)" identifier (argument_list "(in_stack_00000018,0x90)" ( identifier , number_literal ))) ;) (if_statement "if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(in_stack_00000020 != unaff_RBP[3])" ( (binary_expression "in_stack_00000020 != unaff_RBP[3]" identifier != (subscript_expression "unaff_RBP[3]" identifier [ number_literal ])) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*unaff_RBP != 0)" ( (binary_expression "*unaff_RBP != 0" (pointer_expression "*unaff_RBP" * identifier) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "thunk_FUN_002dac70();" (call_expression "thunk_FUN_002dac70()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_001b1c50(unaff_RBX + 0x4a0);" (call_expression "FUN_001b1c50(unaff_RBX + 0x4a0)" identifier (argument_list "(unaff_RBX + 0x4a0)" ( (binary_expression "unaff_RBX + 0x4a0" identifier + number_literal) ))) ;) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x468);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x468)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x468)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x468)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x468)" ( (binary_expression "unaff_RBX + 0x468" identifier + number_literal) ))))) ;) (while_statement "while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" while (parenthesized_expression "(unaff_R12 != puVar3)" ( (binary_expression "unaff_R12 != puVar3" identifier != identifier) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar3;" (assignment_expression "puVar3 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "plVar2 = *(long **)(unaff_RBX + 0x450);" (assignment_expression "plVar2 = *(long **)(unaff_RBX + 0x450)" identifier = (pointer_expression "*(long **)(unaff_RBX + 0x450)" * (cast_expression "(long **)(unaff_RBX + 0x450)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x450)" ( (binary_expression "unaff_RBX + 0x450" identifier + number_literal) ))))) ;) (for_statement "for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }" for ( (assignment_expression "plVar4 = *(long **)(unaff_RBX + 0x448)" identifier = (pointer_expression "*(long **)(unaff_RBX + 0x448)" * (cast_expression "(long **)(unaff_RBX + 0x448)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x448)" ( (binary_expression "unaff_RBX + 0x448" identifier + number_literal) ))))) ; (binary_expression "plVar2 != plVar4" identifier != identifier) ; (assignment_expression "plVar4 = plVar4 + 4" identifier = (binary_expression "plVar4 + 4" identifier + number_literal)) ) (compound_statement "{\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }" { (if_statement "if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }" if (parenthesized_expression "((long *)*plVar4 != plVar4 + 2)" ( (binary_expression "(long *)*plVar4 != plVar4 + 2" (cast_expression "(long *)*plVar4" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar4" * identifier)) != (binary_expression "plVar4 + 2" identifier + number_literal)) )) (compound_statement "{\n      FUN_002dac70();\n    }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) })) (if_statement "if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x448) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x448) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x448)" * (cast_expression "(long *)(unaff_RBX + 0x448)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x448)" ( (binary_expression "unaff_RBX + 0x448" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x420);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x420)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x420)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x420)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x420)" ( (binary_expression "unaff_RBX + 0x420" identifier + number_literal) ))))) ;) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" while (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" ( (binary_expression "puVar3 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" { (expression_statement "puVar1 = (undefined8 *)*puVar3;" (assignment_expression "puVar1 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (if_statement "if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }" if (parenthesized_expression "((undefined8 *)puVar3[1] != puVar3 + 3)" ( (binary_expression "(undefined8 *)puVar3[1] != puVar3 + 3" (cast_expression "(undefined8 *)puVar3[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[1]" identifier [ number_literal ])) != (binary_expression "puVar3 + 3" identifier + number_literal)) )) (compound_statement "{\n      FUN_002dac70();\n    }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_002dac70(puVar3);" (call_expression "FUN_002dac70(puVar3)" identifier (argument_list "(puVar3)" ( identifier ))) ;) (expression_statement "puVar3 = puVar1;" (assignment_expression "puVar3 = puVar1" identifier = identifier) ;) })) (expression_statement "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x410)" * (cast_expression "(void **)(unaff_RBX + 0x410)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x410)" ( (binary_expression "unaff_RBX + 0x410" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x418) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x418)" * (cast_expression "(long *)(unaff_RBX + 0x418)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x418)" ( (binary_expression "unaff_RBX + 0x418" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x428) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x428) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x428)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x428)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x428)" ( (binary_expression "unaff_RBX + 0x428" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x420) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x420) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x420)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x420)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x420)" ( (binary_expression "unaff_RBX + 0x420" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(unaff_R15 != *(long *)(unaff_RBX + 0x410))" ( (binary_expression "unaff_R15 != *(long *)(unaff_RBX + 0x410)" identifier != (pointer_expression "*(long *)(unaff_RBX + 0x410)" * (cast_expression "(long *)(unaff_RBX + 0x410)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x410)" ( (binary_expression "unaff_RBX + 0x410" identifier + number_literal) ))))) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));" (call_expression "FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0))" identifier (argument_list "(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0))" ( (binary_expression "unaff_RBX + 0x3e0" identifier + number_literal) , (pointer_expression "*(undefined8 *)(unaff_RBX + 0x3f0)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x3f0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x3f0)" ( (binary_expression "unaff_RBX + 0x3f0" identifier + number_literal) )))) ))) ;) (expression_statement "FUN_001b1bd0(unaff_RBX + 0x3b0);" (call_expression "FUN_001b1bd0(unaff_RBX + 0x3b0)" identifier (argument_list "(unaff_RBX + 0x3b0)" ( (binary_expression "unaff_RBX + 0x3b0" identifier + number_literal) ))) ;) (if_statement "if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x388) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x388) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x388)" * (cast_expression "(long *)(unaff_RBX + 0x388)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x388)" ( (binary_expression "unaff_RBX + 0x388" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x348) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x348) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x348)" * (cast_expression "(long *)(unaff_RBX + 0x348)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x348)" ( (binary_expression "unaff_RBX + 0x348" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x290) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x290) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x290)" * (cast_expression "(long *)(unaff_RBX + 0x290)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x290)" ( (binary_expression "unaff_RBX + 0x290" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x278) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x278) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x278)" * (cast_expression "(long *)(unaff_RBX + 0x278)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x278)" ( (binary_expression "unaff_RBX + 0x278" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x260) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x260) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x260)" * (cast_expression "(long *)(unaff_RBX + 0x260)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x260)" ( (binary_expression "unaff_RBX + 0x260" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x248) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x248) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x248)" * (cast_expression "(long *)(unaff_RBX + 0x248)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x248)" ( (binary_expression "unaff_RBX + 0x248" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(*(long *)(unaff_RBX + 0x230) != 0)" ( (binary_expression "*(long *)(unaff_RBX + 0x230) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x230)" * (cast_expression "(long *)(unaff_RBX + 0x230)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x230)" ( (binary_expression "unaff_RBX + 0x230" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x208);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x208)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x208)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x208)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x208)" ( (binary_expression "unaff_RBX + 0x208" identifier + number_literal) ))))) ;) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" while (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" ( (binary_expression "puVar3 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" { (expression_statement "puVar3 = (undefined8 *)*puVar3;" (assignment_expression "puVar3 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x1f8)" * (cast_expression "(void **)(unaff_RBX + 0x1f8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1f8)" ( (binary_expression "unaff_RBX + 0x1f8" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x200) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x200)" * (cast_expression "(long *)(unaff_RBX + 0x200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x200)" ( (binary_expression "unaff_RBX + 0x200" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x210) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x210) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x210)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x210)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x210)" ( (binary_expression "unaff_RBX + 0x210" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x208) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x208) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x208)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x208)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x208)" ( (binary_expression "unaff_RBX + 0x208" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(unaff_R14 != *(long *)(unaff_RBX + 0x1f8))" ( (binary_expression "unaff_R14 != *(long *)(unaff_RBX + 0x1f8)" identifier != (pointer_expression "*(long *)(unaff_RBX + 0x1f8)" * (cast_expression "(long *)(unaff_RBX + 0x1f8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1f8)" ( (binary_expression "unaff_RBX + 0x1f8" identifier + number_literal) ))))) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0)" identifier = (pointer_expression "*(undefined8 **)(unaff_RBX + 0x1d0)" * (cast_expression "(undefined8 **)(unaff_RBX + 0x1d0)" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1d0)" ( (binary_expression "unaff_RBX + 0x1d0" identifier + number_literal) ))))) ;) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" while (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" ( (binary_expression "puVar3 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" { (expression_statement "puVar1 = (undefined8 *)*puVar3;" (assignment_expression "puVar1 = (undefined8 *)*puVar3" identifier = (cast_expression "(undefined8 *)*puVar3" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar3" * identifier))) ;) (expression_statement "FUN_001b1b90(puVar3 + 5);" (call_expression "FUN_001b1b90(puVar3 + 5)" identifier (argument_list "(puVar3 + 5)" ( (binary_expression "puVar3 + 5" identifier + number_literal) ))) ;) (if_statement "if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }" if (parenthesized_expression "((undefined8 *)puVar3[1] != puVar3 + 3)" ( (binary_expression "(undefined8 *)puVar3[1] != puVar3 + 3" (cast_expression "(undefined8 *)puVar3[1]" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[1]" identifier [ number_literal ])) != (binary_expression "puVar3 + 3" identifier + number_literal)) )) (compound_statement "{\n      FUN_002dac70();\n    }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_002dac70(puVar3);" (call_expression "FUN_002dac70(puVar3)" identifier (argument_list "(puVar3)" ( identifier ))) ;) (expression_statement "puVar3 = puVar1;" (assignment_expression "puVar3 = puVar1" identifier = identifier) ;) })) (expression_statement "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" identifier (argument_list "(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" ( (pointer_expression "*(void **)(unaff_RBX + 0x1c0)" * (cast_expression "(void **)(unaff_RBX + 0x1c0)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_RBX + 0x1c0)" ( (binary_expression "unaff_RBX + 0x1c0" identifier + number_literal) )))) , number_literal , (binary_expression "*(long *)(unaff_RBX + 0x1c8) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x1c8)" * (cast_expression "(long *)(unaff_RBX + 0x1c8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1c8)" ( (binary_expression "unaff_RBX + 0x1c8" identifier + number_literal) )))) * number_literal) ))) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d8) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d8) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d8)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x1d8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1d8)" ( (binary_expression "unaff_RBX + 0x1d8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d0) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d0) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d0)" * (cast_expression "(undefined8 *)(unaff_RBX + 0x1d0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1d0)" ( (binary_expression "unaff_RBX + 0x1d0" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }" if (parenthesized_expression "(unaff_R13 != *(long *)(unaff_RBX + 0x1c0))" ( (binary_expression "unaff_R13 != *(long *)(unaff_RBX + 0x1c0)" identifier != (pointer_expression "*(long *)(unaff_RBX + 0x1c0)" * (cast_expression "(long *)(unaff_RBX + 0x1c0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_RBX + 0x1c0)" ( (binary_expression "unaff_RBX + 0x1c0" identifier + number_literal) ))))) )) (compound_statement "{\n    FUN_002dac70();\n  }" { (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_0026c780(in_stack_00000010);" (call_expression "FUN_0026c780(in_stack_00000010)" identifier (argument_list "(in_stack_00000010)" ( identifier ))) ;) (expression_statement "FUN_0026c780(in_stack_00000008);" (call_expression "FUN_0026c780(in_stack_00000008)" identifier (argument_list "(in_stack_00000008)" ( identifier ))) ;) (expression_statement "FUN_0026c780(unaff_retaddr);" (call_expression "FUN_0026c780(unaff_retaddr)" identifier (argument_list "(unaff_retaddr)" ( identifier ))) ;) (expression_statement "FUN_003688e0(uStack0000000000000028);" (call_expression "FUN_003688e0(uStack0000000000000028)" identifier (argument_list "(uStack0000000000000028)" ( identifier ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (subscript_expression IDENT [ LIT ])) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (for_statement for ( (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ; (binary_expression IDENT != IDENT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })))
(function_definition "void FUN_0014879a(void)\n\n{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    \n  FUN_003688e0(uStack0000000000000028);\n}" (primitive_type "void") (function_declarator "FUN_0014879a(void)" (identifier "FUN_0014879a") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  undefined8 *puVar1;\n  long *plVar2;\n  undefined8 in_RAX;\n  long unaff_RBX;\n  long *unaff_RBP;\n  undefined8 *puVar3;\n  undefined8 *unaff_R12;\n  long *plVar4;\n  long unaff_R13;\n  long unaff_R14;\n  long unaff_R15;\n  undefined8 unaff_retaddr;\n  undefined8 in_stack_00000008;\n  undefined8 in_stack_00000010;\n  undefined8 in_stack_00000018;\n  long in_stack_00000020;\n  undefined8 uStack0000000000000028;\n  \n  uStack0000000000000028 = in_RAX;\n  thunk_FUN_002dac70(in_stack_00000018,0x90);\n  if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }\n  if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }\n  thunk_FUN_002dac70();\n  FUN_001b1c50(unaff_RBX + 0x4a0);\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);\n  while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  plVar2 = *(long **)(unaff_RBX + 0x450);\n  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }\n  if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);\n  *(undefined8 *)(unaff_RBX + 0x428) = 0;\n  *(undefined8 *)(unaff_RBX + 0x420) = 0;\n  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }\n  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));\n  FUN_001b1bd0(unaff_RBX + 0x3b0);\n  if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }\n  if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }\n  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);\n  *(undefined8 *)(unaff_RBX + 0x210) = 0;\n  *(undefined8 *)(unaff_RBX + 0x208) = 0;\n  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }\n  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);\n  while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }\n  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);\n  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;\n  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;\n  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }\n  FUN_0026c780(in_stack_00000010);\n  FUN_0026c780(in_stack_00000008);\n  FUN_0026c780(unaff_retaddr);\n                    \n  FUN_003688e0(uStack0000000000000028);\n}" ({ "{") (declaration "undefined8 *puVar1;" (type_identifier "undefined8") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "long *plVar2;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar2" (* "*") (identifier "plVar2")) (; ";")) (declaration "undefined8 in_RAX;" (type_identifier "undefined8") (identifier "in_RAX") (; ";")) (declaration "long unaff_RBX;" (sized_type_specifier "long" (long "long")) (identifier "unaff_RBX") (; ";")) (declaration "long *unaff_RBP;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*unaff_RBP" (* "*") (identifier "unaff_RBP")) (; ";")) (declaration "undefined8 *puVar3;" (type_identifier "undefined8") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "undefined8 *unaff_R12;" (type_identifier "undefined8") (pointer_declarator "*unaff_R12" (* "*") (identifier "unaff_R12")) (; ";")) (declaration "long *plVar4;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar4" (* "*") (identifier "plVar4")) (; ";")) (declaration "long unaff_R13;" (sized_type_specifier "long" (long "long")) (identifier "unaff_R13") (; ";")) (declaration "long unaff_R14;" (sized_type_specifier "long" (long "long")) (identifier "unaff_R14") (; ";")) (declaration "long unaff_R15;" (sized_type_specifier "long" (long "long")) (identifier "unaff_R15") (; ";")) (declaration "undefined8 unaff_retaddr;" (type_identifier "undefined8") (identifier "unaff_retaddr") (; ";")) (declaration "undefined8 in_stack_00000008;" (type_identifier "undefined8") (identifier "in_stack_00000008") (; ";")) (declaration "undefined8 in_stack_00000010;" (type_identifier "undefined8") (identifier "in_stack_00000010") (; ";")) (declaration "undefined8 in_stack_00000018;" (type_identifier "undefined8") (identifier "in_stack_00000018") (; ";")) (declaration "long in_stack_00000020;" (sized_type_specifier "long" (long "long")) (identifier "in_stack_00000020") (; ";")) (declaration "undefined8 uStack0000000000000028;" (type_identifier "undefined8") (identifier "uStack0000000000000028") (; ";")) (expression_statement "uStack0000000000000028 = in_RAX;" (assignment_expression "uStack0000000000000028 = in_RAX" (identifier "uStack0000000000000028") (= "=") (identifier "in_RAX")) (; ";")) (expression_statement "thunk_FUN_002dac70(in_stack_00000018,0x90);" (call_expression "thunk_FUN_002dac70(in_stack_00000018,0x90)" (identifier "thunk_FUN_002dac70") (argument_list "(in_stack_00000018,0x90)" (( "(") (identifier "in_stack_00000018") (, ",") (number_literal "0x90") () ")"))) (; ";")) (if_statement "if (in_stack_00000020 != unaff_RBP[3]) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(in_stack_00000020 != unaff_RBP[3])" (( "(") (binary_expression "in_stack_00000020 != unaff_RBP[3]" (identifier "in_stack_00000020") (!= "!=") (subscript_expression "unaff_RBP[3]" (identifier "unaff_RBP") ([ "[") (number_literal "3") (] "]"))) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*unaff_RBP != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*unaff_RBP != 0)" (( "(") (binary_expression "*unaff_RBP != 0" (pointer_expression "*unaff_RBP" (* "*") (identifier "unaff_RBP")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "thunk_FUN_002dac70();" (call_expression "thunk_FUN_002dac70()" (identifier "thunk_FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_001b1c50(unaff_RBX + 0x4a0);" (call_expression "FUN_001b1c50(unaff_RBX + 0x4a0)" (identifier "FUN_001b1c50") (argument_list "(unaff_RBX + 0x4a0)" (( "(") (binary_expression "unaff_RBX + 0x4a0" (identifier "unaff_RBX") (+ "+") (number_literal "0x4a0")) () ")"))) (; ";")) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x468);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x468)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined8 **)(unaff_RBX + 0x468)" (* "*") (cast_expression "(undefined8 **)(unaff_RBX + 0x468)" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x468)" (( "(") (binary_expression "unaff_RBX + 0x468" (identifier "unaff_RBX") (+ "+") (number_literal "0x468")) () ")"))))) (; ";")) (while_statement "while (unaff_R12 != puVar3) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" (while "while") (parenthesized_expression "(unaff_R12 != puVar3)" (( "(") (binary_expression "unaff_R12 != puVar3" (identifier "unaff_R12") (!= "!=") (identifier "puVar3")) () ")")) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "puVar3 = (undefined8 *)*puVar3;" (assignment_expression "puVar3 = (undefined8 *)*puVar3" (identifier "puVar3") (= "=") (cast_expression "(undefined8 *)*puVar3" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar3" (* "*") (identifier "puVar3")))) (; ";")) (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "plVar2 = *(long **)(unaff_RBX + 0x450);" (assignment_expression "plVar2 = *(long **)(unaff_RBX + 0x450)" (identifier "plVar2") (= "=") (pointer_expression "*(long **)(unaff_RBX + 0x450)" (* "*") (cast_expression "(long **)(unaff_RBX + 0x450)" (( "(") (type_descriptor "long **" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x450)" (( "(") (binary_expression "unaff_RBX + 0x450" (identifier "unaff_RBX") (+ "+") (number_literal "0x450")) () ")"))))) (; ";")) (for_statement "for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }" (for "for") (( "(") (assignment_expression "plVar4 = *(long **)(unaff_RBX + 0x448)" (identifier "plVar4") (= "=") (pointer_expression "*(long **)(unaff_RBX + 0x448)" (* "*") (cast_expression "(long **)(unaff_RBX + 0x448)" (( "(") (type_descriptor "long **" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x448)" (( "(") (binary_expression "unaff_RBX + 0x448" (identifier "unaff_RBX") (+ "+") (number_literal "0x448")) () ")"))))) (; ";") (binary_expression "plVar2 != plVar4" (identifier "plVar2") (!= "!=") (identifier "plVar4")) (; ";") (assignment_expression "plVar4 = plVar4 + 4" (identifier "plVar4") (= "=") (binary_expression "plVar4 + 4" (identifier "plVar4") (+ "+") (number_literal "4"))) () ")") (compound_statement "{\n    if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }\n  }" ({ "{") (if_statement "if ((long *)*plVar4 != plVar4 + 2) {\n      FUN_002dac70();\n    }" (if "if") (parenthesized_expression "((long *)*plVar4 != plVar4 + 2)" (( "(") (binary_expression "(long *)*plVar4 != plVar4 + 2" (cast_expression "(long *)*plVar4" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar4" (* "*") (identifier "plVar4"))) (!= "!=") (binary_expression "plVar4 + 2" (identifier "plVar4") (+ "+") (number_literal "2"))) () ")")) (compound_statement "{\n      FUN_002dac70();\n    }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if (*(long *)(unaff_RBX + 0x448) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x448) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x448) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x448)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x448)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x448)" (( "(") (binary_expression "unaff_RBX + 0x448" (identifier "unaff_RBX") (+ "+") (number_literal "0x448")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x420);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x420)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined8 **)(unaff_RBX + 0x420)" (* "*") (cast_expression "(undefined8 **)(unaff_RBX + 0x420)" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x420)" (( "(") (binary_expression "unaff_RBX + 0x420" (identifier "unaff_RBX") (+ "+") (number_literal "0x420")) () ")"))))) (; ";")) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" (while "while") (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" (( "(") (binary_expression "puVar3 != (undefined8 *)0x0" (identifier "puVar3") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    puVar1 = (undefined8 *)*puVar3;\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" ({ "{") (expression_statement "puVar1 = (undefined8 *)*puVar3;" (assignment_expression "puVar1 = (undefined8 *)*puVar3" (identifier "puVar1") (= "=") (cast_expression "(undefined8 *)*puVar3" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar3" (* "*") (identifier "puVar3")))) (; ";")) (if_statement "if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }" (if "if") (parenthesized_expression "((undefined8 *)puVar3[1] != puVar3 + 3)" (( "(") (binary_expression "(undefined8 *)puVar3[1] != puVar3 + 3" (cast_expression "(undefined8 *)puVar3[1]" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar3[1]" (identifier "puVar3") ([ "[") (number_literal "1") (] "]"))) (!= "!=") (binary_expression "puVar3 + 3" (identifier "puVar3") (+ "+") (number_literal "3"))) () ")")) (compound_statement "{\n      FUN_002dac70();\n    }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_002dac70(puVar3);" (call_expression "FUN_002dac70(puVar3)" (identifier "FUN_002dac70") (argument_list "(puVar3)" (( "(") (identifier "puVar3") () ")"))) (; ";")) (expression_statement "puVar3 = puVar1;" (assignment_expression "puVar3 = puVar1" (identifier "puVar3") (= "=") (identifier "puVar1")) (; ";")) (} "}"))) (expression_statement "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" (identifier "memset") (argument_list "(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8)" (( "(") (pointer_expression "*(void **)(unaff_RBX + 0x410)" (* "*") (cast_expression "(void **)(unaff_RBX + 0x410)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x410)" (( "(") (binary_expression "unaff_RBX + 0x410" (identifier "unaff_RBX") (+ "+") (number_literal "0x410")) () ")")))) (, ",") (number_literal "0") (, ",") (binary_expression "*(long *)(unaff_RBX + 0x418) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x418)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x418)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x418)" (( "(") (binary_expression "unaff_RBX + 0x418" (identifier "unaff_RBX") (+ "+") (number_literal "0x418")) () ")")))) (* "*") (number_literal "8")) () ")"))) (; ";")) (expression_statement "*(undefined8 *)(unaff_RBX + 0x428) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x428) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x428)" (* "*") (cast_expression "(undefined8 *)(unaff_RBX + 0x428)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x428)" (( "(") (binary_expression "unaff_RBX + 0x428" (identifier "unaff_RBX") (+ "+") (number_literal "0x428")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined8 *)(unaff_RBX + 0x420) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x420) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x420)" (* "*") (cast_expression "(undefined8 *)(unaff_RBX + 0x420)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x420)" (( "(") (binary_expression "unaff_RBX + 0x420" (identifier "unaff_RBX") (+ "+") (number_literal "0x420")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(unaff_R15 != *(long *)(unaff_RBX + 0x410))" (( "(") (binary_expression "unaff_R15 != *(long *)(unaff_RBX + 0x410)" (identifier "unaff_R15") (!= "!=") (pointer_expression "*(long *)(unaff_RBX + 0x410)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x410)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x410)" (( "(") (binary_expression "unaff_RBX + 0x410" (identifier "unaff_RBX") (+ "+") (number_literal "0x410")) () ")"))))) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));" (call_expression "FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0))" (identifier "FUN_001b1c10") (argument_list "(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0))" (( "(") (binary_expression "unaff_RBX + 0x3e0" (identifier "unaff_RBX") (+ "+") (number_literal "0x3e0")) (, ",") (pointer_expression "*(undefined8 *)(unaff_RBX + 0x3f0)" (* "*") (cast_expression "(undefined8 *)(unaff_RBX + 0x3f0)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x3f0)" (( "(") (binary_expression "unaff_RBX + 0x3f0" (identifier "unaff_RBX") (+ "+") (number_literal "0x3f0")) () ")")))) () ")"))) (; ";")) (expression_statement "FUN_001b1bd0(unaff_RBX + 0x3b0);" (call_expression "FUN_001b1bd0(unaff_RBX + 0x3b0)" (identifier "FUN_001b1bd0") (argument_list "(unaff_RBX + 0x3b0)" (( "(") (binary_expression "unaff_RBX + 0x3b0" (identifier "unaff_RBX") (+ "+") (number_literal "0x3b0")) () ")"))) (; ";")) (if_statement "if (*(long *)(unaff_RBX + 0x388) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x388) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x388) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x388)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x388)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x388)" (( "(") (binary_expression "unaff_RBX + 0x388" (identifier "unaff_RBX") (+ "+") (number_literal "0x388")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(unaff_RBX + 0x348) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x348) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x348) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x348)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x348)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x348)" (( "(") (binary_expression "unaff_RBX + 0x348" (identifier "unaff_RBX") (+ "+") (number_literal "0x348")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(unaff_RBX + 0x290) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x290) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x290) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x290)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x290)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x290)" (( "(") (binary_expression "unaff_RBX + 0x290" (identifier "unaff_RBX") (+ "+") (number_literal "0x290")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(unaff_RBX + 0x278) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x278) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x278) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x278)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x278)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x278)" (( "(") (binary_expression "unaff_RBX + 0x278" (identifier "unaff_RBX") (+ "+") (number_literal "0x278")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(unaff_RBX + 0x260) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x260) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x260) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x260)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x260)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x260)" (( "(") (binary_expression "unaff_RBX + 0x260" (identifier "unaff_RBX") (+ "+") (number_literal "0x260")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(unaff_RBX + 0x248) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x248) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x248) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x248)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x248)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x248)" (( "(") (binary_expression "unaff_RBX + 0x248" (identifier "unaff_RBX") (+ "+") (number_literal "0x248")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(unaff_RBX + 0x230) != 0) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(*(long *)(unaff_RBX + 0x230) != 0)" (( "(") (binary_expression "*(long *)(unaff_RBX + 0x230) != 0" (pointer_expression "*(long *)(unaff_RBX + 0x230)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x230)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x230)" (( "(") (binary_expression "unaff_RBX + 0x230" (identifier "unaff_RBX") (+ "+") (number_literal "0x230")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x208);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x208)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined8 **)(unaff_RBX + 0x208)" (* "*") (cast_expression "(undefined8 **)(unaff_RBX + 0x208)" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x208)" (( "(") (binary_expression "unaff_RBX + 0x208" (identifier "unaff_RBX") (+ "+") (number_literal "0x208")) () ")"))))) (; ";")) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" (while "while") (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" (( "(") (binary_expression "puVar3 != (undefined8 *)0x0" (identifier "puVar3") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    puVar3 = (undefined8 *)*puVar3;\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "puVar3 = (undefined8 *)*puVar3;" (assignment_expression "puVar3 = (undefined8 *)*puVar3" (identifier "puVar3") (= "=") (cast_expression "(undefined8 *)*puVar3" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar3" (* "*") (identifier "puVar3")))) (; ";")) (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" (identifier "memset") (argument_list "(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8)" (( "(") (pointer_expression "*(void **)(unaff_RBX + 0x1f8)" (* "*") (cast_expression "(void **)(unaff_RBX + 0x1f8)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x1f8)" (( "(") (binary_expression "unaff_RBX + 0x1f8" (identifier "unaff_RBX") (+ "+") (number_literal "0x1f8")) () ")")))) (, ",") (number_literal "0") (, ",") (binary_expression "*(long *)(unaff_RBX + 0x200) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x200)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x200)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x200)" (( "(") (binary_expression "unaff_RBX + 0x200" (identifier "unaff_RBX") (+ "+") (number_literal "0x200")) () ")")))) (* "*") (number_literal "8")) () ")"))) (; ";")) (expression_statement "*(undefined8 *)(unaff_RBX + 0x210) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x210) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x210)" (* "*") (cast_expression "(undefined8 *)(unaff_RBX + 0x210)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x210)" (( "(") (binary_expression "unaff_RBX + 0x210" (identifier "unaff_RBX") (+ "+") (number_literal "0x210")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined8 *)(unaff_RBX + 0x208) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x208) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x208)" (* "*") (cast_expression "(undefined8 *)(unaff_RBX + 0x208)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x208)" (( "(") (binary_expression "unaff_RBX + 0x208" (identifier "unaff_RBX") (+ "+") (number_literal "0x208")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(unaff_R14 != *(long *)(unaff_RBX + 0x1f8))" (( "(") (binary_expression "unaff_R14 != *(long *)(unaff_RBX + 0x1f8)" (identifier "unaff_R14") (!= "!=") (pointer_expression "*(long *)(unaff_RBX + 0x1f8)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x1f8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x1f8)" (( "(") (binary_expression "unaff_RBX + 0x1f8" (identifier "unaff_RBX") (+ "+") (number_literal "0x1f8")) () ")"))))) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);" (assignment_expression "puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined8 **)(unaff_RBX + 0x1d0)" (* "*") (cast_expression "(undefined8 **)(unaff_RBX + 0x1d0)" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x1d0)" (( "(") (binary_expression "unaff_RBX + 0x1d0" (identifier "unaff_RBX") (+ "+") (number_literal "0x1d0")) () ")"))))) (; ";")) (while_statement "while (puVar3 != (undefined8 *)0x0) {\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" (while "while") (parenthesized_expression "(puVar3 != (undefined8 *)0x0)" (( "(") (binary_expression "puVar3 != (undefined8 *)0x0" (identifier "puVar3") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    puVar1 = (undefined8 *)*puVar3;\n    FUN_001b1b90(puVar3 + 5);\n    if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }\n    FUN_002dac70(puVar3);\n    puVar3 = puVar1;\n  }" ({ "{") (expression_statement "puVar1 = (undefined8 *)*puVar3;" (assignment_expression "puVar1 = (undefined8 *)*puVar3" (identifier "puVar1") (= "=") (cast_expression "(undefined8 *)*puVar3" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar3" (* "*") (identifier "puVar3")))) (; ";")) (expression_statement "FUN_001b1b90(puVar3 + 5);" (call_expression "FUN_001b1b90(puVar3 + 5)" (identifier "FUN_001b1b90") (argument_list "(puVar3 + 5)" (( "(") (binary_expression "puVar3 + 5" (identifier "puVar3") (+ "+") (number_literal "5")) () ")"))) (; ";")) (if_statement "if ((undefined8 *)puVar3[1] != puVar3 + 3) {\n      FUN_002dac70();\n    }" (if "if") (parenthesized_expression "((undefined8 *)puVar3[1] != puVar3 + 3)" (( "(") (binary_expression "(undefined8 *)puVar3[1] != puVar3 + 3" (cast_expression "(undefined8 *)puVar3[1]" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar3[1]" (identifier "puVar3") ([ "[") (number_literal "1") (] "]"))) (!= "!=") (binary_expression "puVar3 + 3" (identifier "puVar3") (+ "+") (number_literal "3"))) () ")")) (compound_statement "{\n      FUN_002dac70();\n    }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_002dac70(puVar3);" (call_expression "FUN_002dac70(puVar3)" (identifier "FUN_002dac70") (argument_list "(puVar3)" (( "(") (identifier "puVar3") () ")"))) (; ";")) (expression_statement "puVar3 = puVar1;" (assignment_expression "puVar3 = puVar1" (identifier "puVar3") (= "=") (identifier "puVar1")) (; ";")) (} "}"))) (expression_statement "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);" (call_expression "memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" (identifier "memset") (argument_list "(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8)" (( "(") (pointer_expression "*(void **)(unaff_RBX + 0x1c0)" (* "*") (cast_expression "(void **)(unaff_RBX + 0x1c0)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_RBX + 0x1c0)" (( "(") (binary_expression "unaff_RBX + 0x1c0" (identifier "unaff_RBX") (+ "+") (number_literal "0x1c0")) () ")")))) (, ",") (number_literal "0") (, ",") (binary_expression "*(long *)(unaff_RBX + 0x1c8) * 8" (pointer_expression "*(long *)(unaff_RBX + 0x1c8)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x1c8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x1c8)" (( "(") (binary_expression "unaff_RBX + 0x1c8" (identifier "unaff_RBX") (+ "+") (number_literal "0x1c8")) () ")")))) (* "*") (number_literal "8")) () ")"))) (; ";")) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d8) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d8) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d8)" (* "*") (cast_expression "(undefined8 *)(unaff_RBX + 0x1d8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x1d8)" (( "(") (binary_expression "unaff_RBX + 0x1d8" (identifier "unaff_RBX") (+ "+") (number_literal "0x1d8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined8 *)(unaff_RBX + 0x1d0) = 0;" (assignment_expression "*(undefined8 *)(unaff_RBX + 0x1d0) = 0" (pointer_expression "*(undefined8 *)(unaff_RBX + 0x1d0)" (* "*") (cast_expression "(undefined8 *)(unaff_RBX + 0x1d0)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x1d0)" (( "(") (binary_expression "unaff_RBX + 0x1d0" (identifier "unaff_RBX") (+ "+") (number_literal "0x1d0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {\n    FUN_002dac70();\n  }" (if "if") (parenthesized_expression "(unaff_R13 != *(long *)(unaff_RBX + 0x1c0))" (( "(") (binary_expression "unaff_R13 != *(long *)(unaff_RBX + 0x1c0)" (identifier "unaff_R13") (!= "!=") (pointer_expression "*(long *)(unaff_RBX + 0x1c0)" (* "*") (cast_expression "(long *)(unaff_RBX + 0x1c0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_RBX + 0x1c0)" (( "(") (binary_expression "unaff_RBX + 0x1c0" (identifier "unaff_RBX") (+ "+") (number_literal "0x1c0")) () ")"))))) () ")")) (compound_statement "{\n    FUN_002dac70();\n  }" ({ "{") (expression_statement "FUN_002dac70();" (call_expression "FUN_002dac70()" (identifier "FUN_002dac70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0026c780(in_stack_00000010);" (call_expression "FUN_0026c780(in_stack_00000010)" (identifier "FUN_0026c780") (argument_list "(in_stack_00000010)" (( "(") (identifier "in_stack_00000010") () ")"))) (; ";")) (expression_statement "FUN_0026c780(in_stack_00000008);" (call_expression "FUN_0026c780(in_stack_00000008)" (identifier "FUN_0026c780") (argument_list "(in_stack_00000008)" (( "(") (identifier "in_stack_00000008") () ")"))) (; ";")) (expression_statement "FUN_0026c780(unaff_retaddr);" (call_expression "FUN_0026c780(unaff_retaddr)" (identifier "FUN_0026c780") (argument_list "(unaff_retaddr)" (( "(") (identifier "unaff_retaddr") () ")"))) (; ";")) (expression_statement "FUN_003688e0(uStack0000000000000028);" (call_expression "FUN_003688e0(uStack0000000000000028)" (identifier "FUN_003688e0") (argument_list "(uStack0000000000000028)" (( "(") (identifier "uStack0000000000000028") () ")"))) (; ";")) (} "}")))

void function_1(void)

{
  type_1 in_RAX;
  long var_7;
  type_1 *unaff_RBP;
  int __in_chrg;
  type_1 uVar1;
  type_1 *var_9;
  type_1 *var_8;
  type_1 *var_10;
  void *var_25;
  void *var_23;
  void *var_12;
  var_1<var_2> *unaff_retaddr;
  var_1<var_2> *in_stack_00000008;
  var_1<var_2> *in_stack_00000010;
  void *in_stack_00000018;
  void *var_4;
  type_1 uStack0000000000000028;
  
  uStack0000000000000028 = in_RAX;
  var_3(in_stack_00000018,0x90);
  if (var_4 != (void *)unaff_RBP[3]) {
    var_3((void *)unaff_RBP[3]);
  }
  if ((void *)*unaff_RBP != (void *)0x0) {
    var_3((void *)*unaff_RBP);
  }
  var_3(unaff_RBP,0x80);
  var_19::
  var_18<unsigned_int,var_21::pair<unsigned_int_const,_gold::var_13::var_5>,var_21::_Select1st<var_19::pair<unsigned_int_const,_gold::var_13::var_5>var_6>,var_21::less<unsigned_int>,var_21::allocator<var_19::pair<unsigned_int_const,_gold::var_13::var_5>var_6>var_6>
  ::var_14((var_18<unsigned_int,var_21::pair<unsigned_int_const,_gold::var_13::var_5>,var_21::_Select1st<var_19::pair<unsigned_int_const,_gold::var_13::var_5>var_6>,var_21::less<unsigned_int>,var_21::allocator<var_19::pair<unsigned_int_const,_gold::Layout::var_5>var_6>var_6>
              *)(var_7 + 0x4a0),*(type_2 *)(var_7 + 0x4b0));
  var_9 = *(type_1 **)(var_7 + 0x468);
  while (var_8 != var_9) {
    var_10 = (type_1 *)*var_9;
    var_3(var_9);
    var_9 = var_10;
  }
  var_9 = *(type_1 **)(var_7 + 0x450);
  for (var_10 = *(type_1 **)(var_7 + 0x448); var_9 != var_10; var_10 = var_10 + 4) {
    if ((type_1 *)*var_10 != var_10 + 2) {
      var_3((type_1 *)*var_10);
    }
  }
  if (*(void **)(var_7 + 0x448) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x448));
  }
  var_9 = *(type_1 **)(var_7 + 0x420);
  while (var_9 != (type_1 *)0x0) {
    var_10 = (type_1 *)*var_9;
    if ((type_1 *)var_9[1] != var_9 + 3) {
      var_3((type_1 *)var_9[1]);
    }
    var_3(var_9);
    var_9 = var_10;
  }
  var_11(*(void **)(var_7 + 0x410),0,*(long *)(var_7 + 0x418) * 8);
  *(type_1 *)(var_7 + 0x428) = 0;
  *(type_1 *)(var_7 + 0x420) = 0;
  if (var_12 != *(void **)(var_7 + 0x410)) {
    var_3(*(void **)(var_7 + 0x410));
  }
  var_19::
  var_18<var_19::pair<const_gold::var_16*,var_17>,var_21::pair<var_22::pair<const_gold::var_16*,var_17>,_gold::var_13::var_15*>,var_21::_Select1st<var_19::pair<var_22::pair<const_gold::var_16*,var_17>,_gold::var_13::var_15*>var_6>,var_21::less<var_19::pair<const_gold::var_16*,var_17>var_6>,var_21::allocator<var_19::pair<var_22::pair<const_gold::var_16*,var_17>,_gold::var_13::var_15*>var_6>var_6>
  ::var_14((var_18<var_19::pair<const_gold::var_16*,var_17>,var_21::pair<var_22::pair<const_gold::var_16*,var_17>,_gold::var_13::var_15*>,var_21::_Select1st<var_19::pair<var_22::pair<const_gold::var_16*,var_17>,_gold::var_13::var_15*>var_6>,var_21::less<var_19::pair<const_gold::var_16*,var_17>var_6>,var_21::allocator<var_19::pair<var_22::pair<const_gold::var_16*,var_17>,_gold::var_13::var_15*>var_6>var_6>
              *)(var_7 + 0x3e0),*(type_2 *)(var_7 + 0x3f0));
  var_19::
  var_18<var_19::pair<var_20::var_16*,var_17>,var_21::pair<var_22::pair<var_20::var_16*,var_17>,var_17>,var_21::_Select1st<var_19::pair<var_22::pair<var_20::var_16*,var_17>,var_17>var_6>,var_21::less<var_19::pair<var_20::var_16*,var_17>var_6>,var_21::allocator<var_19::pair<var_22::pair<var_20::var_16*,var_17>,var_17>var_6>var_6>
  ::var_14((var_18<var_19::pair<var_20::var_16*,var_17>,var_21::pair<var_22::pair<var_20::var_16*,var_17>,var_17>,var_21::_Select1st<var_19::pair<var_22::pair<var_20::var_16*,var_17>,var_17>var_6>,var_21::less<var_19::pair<var_20::var_16*,var_17>var_6>,var_21::allocator<var_19::pair<var_22::pair<var_20::var_16*,var_17>,var_17>var_6>var_6>
              *)(var_7 + 0x3b0),*(type_2 *)(var_7 + 0x3c0));
  if (*(void **)(var_7 + 0x388) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x388));
  }
  if (*(void **)(var_7 + 0x348) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x348));
  }
  if (*(void **)(var_7 + 0x290) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x290));
  }
  if (*(void **)(var_7 + 0x278) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x278));
  }
  if (*(void **)(var_7 + 0x260) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x260));
  }
  if (*(void **)(var_7 + 0x248) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x248));
  }
  if (*(void **)(var_7 + 0x230) != (void *)0x0) {
    var_3(*(void **)(var_7 + 0x230));
  }
  var_9 = *(type_1 **)(var_7 + 0x208);
  while (var_9 != (type_1 *)0x0) {
    var_10 = (type_1 *)*var_9;
    var_3(var_9);
    var_9 = var_10;
  }
  uVar1 = 0;
  var_11(*(void **)(var_7 + 0x1f8),0,*(long *)(var_7 + 0x200) * 8);
  *(type_1 *)(var_7 + 0x210) = 0;
  *(type_1 *)(var_7 + 0x208) = 0;
  if (var_23 != *(void **)(var_7 + 0x1f8)) {
    var_3(*(void **)(var_7 + 0x1f8));
  }
  var_9 = *(type_1 **)(var_7 + 0x1d0);
  while (var_9 != (type_1 *)0x0) {
    var_10 = (type_1 *)*var_9;
    gold::Kept_section::~var_24((var_24 *)(var_9 + 5),(int)uVar1);
    if ((type_1 *)var_9[1] != var_9 + 3) {
      var_3((type_1 *)var_9[1]);
    }
    var_3(var_9);
    var_9 = var_10;
  }
  __in_chrg = 0;
  var_11(*(void **)(var_7 + 0x1c0),0,*(long *)(var_7 + 0x1c8) * 8);
  *(type_1 *)(var_7 + 0x1d8) = 0;
  *(type_1 *)(var_7 + 0x1d0) = 0;
  if (var_25 != *(void **)(var_7 + 0x1c0)) {
    var_3(*(void **)(var_7 + 0x1c0));
  }
  gold::var_1<var_2>::~var_1(in_stack_00000010,__in_chrg);
  gold::var_1<var_2>::~var_1(in_stack_00000008,__in_chrg);
  gold::var_1<var_2>::~var_1(unaff_retaddr,__in_chrg);
                    /* WARNING: Subroutine does not return */
  var_26(uStack0000000000000028);
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (for_statement initializer: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) condition: (binary_expression left: (identifier) right: (identifier)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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))))) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (pointer_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: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) 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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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))))) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))))

void MASKED(void)

{
  undefined8 *puVar1;
  long *plVar2;
  undefined8 in_RAX;
  long unaff_RBX;
  long *unaff_RBP;
  undefined8 *puVar3;
  undefined8 *unaff_R12;
  long *plVar4;
  long unaff_R13;
  long unaff_R14;
  long unaff_R15;
  undefined8 unaff_retaddr;
  undefined8 in_stack_00000008;
  undefined8 in_stack_00000010;
  undefined8 in_stack_00000018;
  long in_stack_00000020;
  undefined8 uStack0000000000000028;
  
  uStack0000000000000028 = in_RAX;
  thunk_FUN_002dac70(in_stack_00000018,0x90);
  if (in_stack_00000020 != unaff_RBP[3]) {
    FUN_002dac70();
  }
  if (*unaff_RBP != 0) {
    FUN_002dac70();
  }
  thunk_FUN_002dac70();
  FUN_001b1c50(unaff_RBX + 0x4a0);
  puVar3 = *(undefined8 **)(unaff_RBX + 0x468);
  while (unaff_R12 != puVar3) {
    puVar3 = (undefined8 *)*puVar3;
    FUN_002dac70();
  }
  plVar2 = *(long **)(unaff_RBX + 0x450);
  for (plVar4 = *(long **)(unaff_RBX + 0x448); plVar2 != plVar4; plVar4 = plVar4 + 4) {
    if ((long *)*plVar4 != plVar4 + 2) {
      FUN_002dac70();
    }
  }
  if (*(long *)(unaff_RBX + 0x448) != 0) {
    FUN_002dac70();
  }
  puVar3 = *(undefined8 **)(unaff_RBX + 0x420);
  while (puVar3 != (undefined8 *)0x0) {
    puVar1 = (undefined8 *)*puVar3;
    if ((undefined8 *)puVar3[1] != puVar3 + 3) {
      FUN_002dac70();
    }
    FUN_002dac70(puVar3);
    puVar3 = puVar1;
  }
  memset(*(void **)(unaff_RBX + 0x410),0,*(long *)(unaff_RBX + 0x418) * 8);
  *(undefined8 *)(unaff_RBX + 0x428) = 0;
  *(undefined8 *)(unaff_RBX + 0x420) = 0;
  if (unaff_R15 != *(long *)(unaff_RBX + 0x410)) {
    FUN_002dac70();
  }
  FUN_001b1c10(unaff_RBX + 0x3e0,*(undefined8 *)(unaff_RBX + 0x3f0));
  FUN_001b1bd0(unaff_RBX + 0x3b0);
  if (*(long *)(unaff_RBX + 0x388) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x348) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x290) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x278) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x260) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x248) != 0) {
    FUN_002dac70();
  }
  if (*(long *)(unaff_RBX + 0x230) != 0) {
    FUN_002dac70();
  }
  puVar3 = *(undefined8 **)(unaff_RBX + 0x208);
  while (puVar3 != (undefined8 *)0x0) {
    puVar3 = (undefined8 *)*puVar3;
    FUN_002dac70();
  }
  memset(*(void **)(unaff_RBX + 0x1f8),0,*(long *)(unaff_RBX + 0x200) * 8);
  *(undefined8 *)(unaff_RBX + 0x210) = 0;
  *(undefined8 *)(unaff_RBX + 0x208) = 0;
  if (unaff_R14 != *(long *)(unaff_RBX + 0x1f8)) {
    FUN_002dac70();
  }
  puVar3 = *(undefined8 **)(unaff_RBX + 0x1d0);
  while (puVar3 != (undefined8 *)0x0) {
    puVar1 = (undefined8 *)*puVar3;
    FUN_001b1b90(puVar3 + 5);
    if ((undefined8 *)puVar3[1] != puVar3 + 3) {
      FUN_002dac70();
    }
    FUN_002dac70(puVar3);
    puVar3 = puVar1;
  }
  memset(*(void **)(unaff_RBX + 0x1c0),0,*(long *)(unaff_RBX + 0x1c8) * 8);
  *(undefined8 *)(unaff_RBX + 0x1d8) = 0;
  *(undefined8 *)(unaff_RBX + 0x1d0) = 0;
  if (unaff_R13 != *(long *)(unaff_RBX + 0x1c0)) {
    FUN_002dac70();
  }
  FUN_0026c780(in_stack_00000010);
  FUN_0026c780(in_stack_00000008);
  FUN_0026c780(unaff_retaddr);
                    /* WARNING: Subroutine does not return */
  FUN_003688e0(uStack0000000000000028);
}

