
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* DWARF original prototype: bool is_section_name_included(Relobj * this, char * name) */

bool __thiscall gold::Relobj::is_section_name_included(Relobj *this,char *name)

{
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

bool FUN_00121fb0(undefined4 param_1,byte *param_2)

{
  char *pcVar1;
  int iVar2;
  byte *pbVar3;
  byte *pbVar4;
  bool bVar5;
  bool bVar6;
  bool bVar7;
  byte bVar8;
  
  bVar8 = 0;
  iVar2 = 6;
  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;
  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;
  pbVar3 = (byte *)".ctors";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar5 = *pbVar3 < *pbVar4;
    bVar7 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar7);
  bVar6 = false;
  bVar5 = (!bVar5 && !bVar7) == bVar5;
  if (bVar5) {
    return true;
  }
  iVar2 = 6;
  pbVar3 = (byte *)".dtors";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".note";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".init";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".fini";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    return true;
  }
  iVar2 = 0x11;
  pbVar3 = (byte *)".gcc_except_table";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 4;
  pbVar3 = &DAT_002fd4f3;
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    return true;
  }
  iVar2 = 0xe;
  pbVar3 = (byte *)".preinit_array";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".text";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    pcVar1 = strstr((char *)param_2,"personality");
    bVar5 = pcVar1 == (char *)0x0;
    if (!bVar5) {
      return true;
    }
  }
  bVar7 = false;
  iVar2 = 5;
  pbVar3 = (byte *)".data";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    pcVar1 = strstr((char *)param_2,"personality");
    bVar5 = false;
    bVar7 = pcVar1 == (char *)0x0;
    if (!bVar7) {
      return true;
    }
    iVar2 = 6;
    pbVar3 = (byte *)".sdata";
    pbVar4 = param_2;
    do {
      if (iVar2 == 0) break;
      iVar2 = iVar2 + -1;
      bVar5 = *pbVar3 < *pbVar4;
      bVar7 = *pbVar3 == *pbVar4;
      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
    } while (bVar7);
    bVar5 = (!bVar5 && !bVar7) == bVar5;
    if (bVar5) goto LAB_0012213e;
LAB_00122198:
    bVar7 = false;
    iVar2 = 0xf;
    pbVar3 = (byte *)".gnu.linkonce.d";
    pbVar4 = param_2;
    do {
      if (iVar2 == 0) break;
      iVar2 = iVar2 + -1;
      bVar7 = *pbVar3 < *pbVar4;
      bVar5 = *pbVar3 == *pbVar4;
      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
    } while (bVar5);
    bVar5 = (!bVar7 && !bVar5) == bVar7;
    if (!bVar5) goto LAB_0012213e;
  }
  else {
    iVar2 = 6;
    pbVar3 = (byte *)".sdata";
    pbVar4 = param_2;
    do {
      if (iVar2 == 0) break;
      iVar2 = iVar2 + -1;
      bVar6 = *pbVar3 < *pbVar4;
      bVar5 = *pbVar3 == *pbVar4;
      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
    } while (bVar5);
    bVar5 = (!bVar6 && !bVar5) == bVar6;
    if (!bVar5) goto LAB_00122198;
  }
  pcVar1 = strstr((char *)param_2,"personality");
  bVar5 = pcVar1 == (char *)0x0;
  if (!bVar5) {
    return true;
  }
LAB_0012213e:
  bVar7 = false;
  iVar2 = 7;
  pbVar3 = (byte *)".rodata";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
  } while (bVar5);
  bVar6 = false;
  if ((!bVar7 && !bVar5) == bVar7) {
    pcVar1 = strstr((char *)param_2,"nptl_version");
    bVar6 = pcVar1 != (char *)0x0;
  }
  return bVar6;
}


PUSH EBP
MOV ECX,0x6
MOV EBP,0x1
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x0003a210
ADD EBX,0x2f203d
SUB ESP,0xc
MOV EDX,dword ptr [ESP + 0x24]
MOV EDI,EDX
LEA ESI,[EBX + 0xffee9430]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0x6
LEA ESI,[EBX + 0xffee944f]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0x5
LEA ESI,[EBX + 0xffeeaedc]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0x5
LEA ESI,[EBX + 0xffee93d9]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0x5
LEA ESI,[EBX + 0xffee93df]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0x11
LEA ESI,[EBX + 0xffee312c]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0x4
LEA ESI,[EBX + 0xffee94f3]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0xe
LEA ESI,[EBX + 0xffee94d1]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x00122172
MOV ECX,0x5
LEA ESI,[EBX + 0xffee2fb0]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x001220e6
SUB ESP,0x8
LEA EAX,[EBX + 0xffeeaee2]
PUSH EAX
PUSH EDX
MOV dword ptr [ESP + 0x34],EDX
CALL 0x0002c170
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x24]
TEST EAX,EAX
JNZ 0x00122172
MOV ECX,0x5
LEA ESI,[EBX + 0xffee9719]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x00122180
SUB ESP,0x8
LEA EAX,[EBX + 0xffeeaee2]
MOV EBP,0x1
PUSH EAX
PUSH EDX
MOV dword ptr [ESP + 0x34],EDX
CALL 0x0002c170
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00122172
MOV EDX,dword ptr [ESP + 0x24]
MOV ECX,0x6
LEA ESI,[EBX + 0xffee2f85]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x00122198
MOV ECX,0x7
LEA ESI,[EBX + 0xffee96e8]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
XOR EBP,EBP
TEST AL,AL
JNZ 0x00122172
SUB ESP,0x8
LEA EAX,[EBX + 0xffeeaefe]
PUSH EAX
PUSH EDX
CALL 0x0002c170
ADD ESP,0x10
TEST EAX,EAX
SETNZ AL
MOV EBP,EAX
ADD ESP,0xc
MOV EAX,EBP
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV ECX,0x6
LEA ESI,[EBX + 0xffee2f85]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x001221b0
MOV ECX,0xf
LEA ESI,[EBX + 0xffeeaeee]
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x0012213e
SUB ESP,0x8
LEA EAX,[EBX + 0xffeeaee2]
MOV EBP,0x1
PUSH EAX
PUSH EDX
MOV dword ptr [ESP + 0x34],EDX
CALL 0x0002c170
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x24]
TEST EAX,EAX
JNZ 0x00122172
JMP 0x0012213e
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nbool FUN_00121fb0(undefined4 param_1,byte *param_2)\n\n{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}\n\n" comment (function_definition "bool FUN_00121fb0(undefined4 param_1,byte *param_2)\n\n{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}" primitive_type (function_declarator "FUN_00121fb0(undefined4 param_1,byte *param_2)" identifier (parameter_list "(undefined4 param_1,byte *param_2)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "byte *pbVar4;" type_identifier (pointer_declarator "*pbVar4" * identifier) ;) (declaration "bool bVar5;" primitive_type identifier ;) (declaration "bool bVar6;" primitive_type identifier ;) (declaration "bool bVar7;" primitive_type identifier ;) (declaration "byte bVar8;" type_identifier identifier ;) (expression_statement "bVar8 = 0;" (assignment_expression "bVar8 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;" (assignment_expression "bVar5 = &stack0xfffffff0 < (undefined1 *)0xc" identifier = (binary_expression "&stack0xfffffff0 < (undefined1 *)0xc" (pointer_expression "&stack0xfffffff0" & identifier) < (cast_expression "(undefined1 *)0xc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "bVar7 = &stack0x00000000 == (undefined1 *)0x1c;" (assignment_expression "bVar7 = &stack0x00000000 == (undefined1 *)0x1c" identifier = (binary_expression "&stack0x00000000 == (undefined1 *)0x1c" (pointer_expression "&stack0x00000000" & identifier) == (cast_expression "(undefined1 *)0x1c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "pbVar3 = (byte *)".ctors";" (assignment_expression "pbVar3 = (byte *)".ctors"" identifier = (cast_expression "(byte *)".ctors"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".ctors"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar5 = *pbVar3 < *pbVar4;" (assignment_expression "bVar5 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar7 = *pbVar3 == *pbVar4;" (assignment_expression "bVar7 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar7)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar5 && !bVar7) == bVar5;" (assignment_expression "bVar5 = (!bVar5 && !bVar7) == bVar5" identifier = (binary_expression "(!bVar5 && !bVar7) == bVar5" (parenthesized_expression "(!bVar5 && !bVar7)" ( (binary_expression "!bVar5 && !bVar7" (unary_expression "!bVar5" ! identifier) && (unary_expression "!bVar7" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".dtors";" (assignment_expression "pbVar3 = (byte *)".dtors"" identifier = (cast_expression "(byte *)".dtors"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".dtors"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".note";" (assignment_expression "pbVar3 = (byte *)".note"" identifier = (cast_expression "(byte *)".note"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".note"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".init";" (assignment_expression "pbVar3 = (byte *)".init"" identifier = (cast_expression "(byte *)".init"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".init"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".fini";" (assignment_expression "pbVar3 = (byte *)".fini"" identifier = (cast_expression "(byte *)".fini"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".fini"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 0x11;" (assignment_expression "iVar2 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".gcc_except_table";" (assignment_expression "pbVar3 = (byte *)".gcc_except_table"" identifier = (cast_expression "(byte *)".gcc_except_table"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gcc_except_table"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 4;" (assignment_expression "iVar2 = 4" identifier = number_literal) ;) (expression_statement "pbVar3 = &DAT_002fd4f3;" (assignment_expression "pbVar3 = &DAT_002fd4f3" identifier = (pointer_expression "&DAT_002fd4f3" & identifier)) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 0xe;" (assignment_expression "iVar2 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".preinit_array";" (assignment_expression "pbVar3 = (byte *)".preinit_array"" identifier = (cast_expression "(byte *)".preinit_array"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".preinit_array"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".text";" (assignment_expression "pbVar3 = (byte *)".text"" identifier = (cast_expression "(byte *)".text"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".text"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }" { (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" identifier = (call_expression "strstr((char *)param_2,"personality")" identifier (argument_list "((char *)param_2,"personality")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""personality"" " string_content ") )))) ;) (expression_statement "bVar5 = pcVar1 == (char *)0x0;" (assignment_expression "bVar5 = pcVar1 == (char *)0x0" identifier = (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (!bVar5) {\n      return true;\n    }" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (compound_statement "{\n      return true;\n    }" { (return_statement "return true;" return true ;) })) })) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".data";" (assignment_expression "pbVar3 = (byte *)".data"" identifier = (cast_expression "(byte *)".data"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".data"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }" { (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" identifier = (call_expression "strstr((char *)param_2,"personality")" identifier (argument_list "((char *)param_2,"personality")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""personality"" " string_content ") )))) ;) (expression_statement "bVar5 = false;" (assignment_expression "bVar5 = false" identifier = false) ;) (expression_statement "bVar7 = pcVar1 == (char *)0x0;" (assignment_expression "bVar7 = pcVar1 == (char *)0x0" identifier = (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (!bVar7) {\n      return true;\n    }" if (parenthesized_expression "(!bVar7)" ( (unary_expression "!bVar7" ! identifier) )) (compound_statement "{\n      return true;\n    }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".sdata";" (assignment_expression "pbVar3 = (byte *)".sdata"" identifier = (cast_expression "(byte *)".sdata"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".sdata"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);" do (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar5 = *pbVar3 < *pbVar4;" (assignment_expression "bVar5 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar7 = *pbVar3 == *pbVar4;" (assignment_expression "bVar7 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar7)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar5 && !bVar7) == bVar5;" (assignment_expression "bVar5 = (!bVar5 && !bVar7) == bVar5" identifier = (binary_expression "(!bVar5 && !bVar7) == bVar5" (parenthesized_expression "(!bVar5 && !bVar7)" ( (binary_expression "!bVar5 && !bVar7" (unary_expression "!bVar5" ! identifier) && (unary_expression "!bVar7" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) goto LAB_0012213e;" if (parenthesized_expression "(bVar5)" ( identifier )) (goto_statement "goto LAB_0012213e;" goto statement_identifier ;)) (labeled_statement "LAB_00122198:\n    bVar7 = false;" statement_identifier : (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;)) (expression_statement "iVar2 = 0xf;" (assignment_expression "iVar2 = 0xf" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".gnu.linkonce.d";" (assignment_expression "pbVar3 = (byte *)".gnu.linkonce.d"" identifier = (cast_expression "(byte *)".gnu.linkonce.d"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu.linkonce.d"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);" do (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar5) goto LAB_0012213e;" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (goto_statement "goto LAB_0012213e;" goto statement_identifier ;)) }) (else_clause "else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" else (compound_statement "{\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".sdata";" (assignment_expression "pbVar3 = (byte *)".sdata"" identifier = (cast_expression "(byte *)".sdata"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".sdata"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);" do (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar5) goto LAB_00122198;" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (goto_statement "goto LAB_00122198;" goto statement_identifier ;)) }))) (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" identifier = (call_expression "strstr((char *)param_2,"personality")" identifier (argument_list "((char *)param_2,"personality")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""personality"" " string_content ") )))) ;) (expression_statement "bVar5 = pcVar1 == (char *)0x0;" (assignment_expression "bVar5 = pcVar1 == (char *)0x0" identifier = (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (!bVar5) {\n    return true;\n  }" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (labeled_statement "LAB_0012213e:\n  bVar7 = false;" statement_identifier : (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;)) (expression_statement "iVar2 = 7;" (assignment_expression "iVar2 = 7" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".rodata";" (assignment_expression "pbVar3 = (byte *)".rodata"" identifier = (cast_expression "(byte *)".rodata"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rodata"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (if_statement "if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }" if (parenthesized_expression "((!bVar7 && !bVar5) == bVar7)" ( (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier) )) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }" { (expression_statement "pcVar1 = strstr((char *)param_2,"nptl_version");" (assignment_expression "pcVar1 = strstr((char *)param_2,"nptl_version")" identifier = (call_expression "strstr((char *)param_2,"nptl_version")" identifier (argument_list "((char *)param_2,"nptl_version")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nptl_version"" " string_content ") )))) ;) (expression_statement "bVar6 = pcVar1 != (char *)0x0;" (assignment_expression "bVar6 = pcVar1 != (char *)0x0" identifier = (binary_expression "pcVar1 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) })) (return_statement "return bVar6;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* DWARF original prototype: bool is_section_name_included(Relobj * this, char * name) */\n\nbool __thiscall gold::Relobj::is_section_name_included(Relobj *this,char *name)\n\n{\n}\n\n" comment comment (function_definition "bool __thiscall gold::Relobj::is_section_name_included(Relobj *this,char *name)\n\n{\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Relobj::" identifier : : identifier : :) (function_declarator "is_section_name_included(Relobj *this,char *name)" identifier (parameter_list "(Relobj *this,char *name)" ( (parameter_declaration "Relobj *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "char *name" primitive_type (pointer_declarator "*name" * identifier)) ))) (compound_statement "{\n}" { })))
(translation_unit "bool FUN_00121fb0(undefined4 param_1,byte *param_2)\n\n{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}\n\n" (function_definition "bool FUN_00121fb0(undefined4 param_1,byte *param_2)\n\n{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}" primitive_type (function_declarator "FUN_00121fb0(undefined4 param_1,byte *param_2)" identifier (parameter_list "(undefined4 param_1,byte *param_2)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (declaration "byte *pbVar4;" type_identifier (pointer_declarator "*pbVar4" * identifier) ;) (declaration "bool bVar5;" primitive_type identifier ;) (declaration "bool bVar6;" primitive_type identifier ;) (declaration "bool bVar7;" primitive_type identifier ;) (declaration "byte bVar8;" type_identifier identifier ;) (expression_statement "bVar8 = 0;" (assignment_expression "bVar8 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;" (assignment_expression "bVar5 = &stack0xfffffff0 < (undefined1 *)0xc" identifier = (binary_expression "&stack0xfffffff0 < (undefined1 *)0xc" (pointer_expression "&stack0xfffffff0" & identifier) < (cast_expression "(undefined1 *)0xc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "bVar7 = &stack0x00000000 == (undefined1 *)0x1c;" (assignment_expression "bVar7 = &stack0x00000000 == (undefined1 *)0x1c" identifier = (binary_expression "&stack0x00000000 == (undefined1 *)0x1c" (pointer_expression "&stack0x00000000" & identifier) == (cast_expression "(undefined1 *)0x1c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "pbVar3 = (byte *)".ctors";" (assignment_expression "pbVar3 = (byte *)".ctors"" identifier = (cast_expression "(byte *)".ctors"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".ctors"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar5 = *pbVar3 < *pbVar4;" (assignment_expression "bVar5 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar7 = *pbVar3 == *pbVar4;" (assignment_expression "bVar7 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar7)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar5 && !bVar7) == bVar5;" (assignment_expression "bVar5 = (!bVar5 && !bVar7) == bVar5" identifier = (binary_expression "(!bVar5 && !bVar7) == bVar5" (parenthesized_expression "(!bVar5 && !bVar7)" ( (binary_expression "!bVar5 && !bVar7" (unary_expression "!bVar5" ! identifier) && (unary_expression "!bVar7" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".dtors";" (assignment_expression "pbVar3 = (byte *)".dtors"" identifier = (cast_expression "(byte *)".dtors"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".dtors"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".note";" (assignment_expression "pbVar3 = (byte *)".note"" identifier = (cast_expression "(byte *)".note"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".note"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".init";" (assignment_expression "pbVar3 = (byte *)".init"" identifier = (cast_expression "(byte *)".init"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".init"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".fini";" (assignment_expression "pbVar3 = (byte *)".fini"" identifier = (cast_expression "(byte *)".fini"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".fini"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 0x11;" (assignment_expression "iVar2 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".gcc_except_table";" (assignment_expression "pbVar3 = (byte *)".gcc_except_table"" identifier = (cast_expression "(byte *)".gcc_except_table"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gcc_except_table"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 4;" (assignment_expression "iVar2 = 4" identifier = number_literal) ;) (expression_statement "pbVar3 = &DAT_002fd4f3;" (assignment_expression "pbVar3 = &DAT_002fd4f3" identifier = (pointer_expression "&DAT_002fd4f3" & identifier)) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 0xe;" (assignment_expression "iVar2 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".preinit_array";" (assignment_expression "pbVar3 = (byte *)".preinit_array"" identifier = (cast_expression "(byte *)".preinit_array"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".preinit_array"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    return true;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".text";" (assignment_expression "pbVar3 = (byte *)".text"" identifier = (cast_expression "(byte *)".text"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".text"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" identifier = (binary_expression "pbVar3 + 1" identifier + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" identifier = (binary_expression "pbVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }" { (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" identifier = (call_expression "strstr((char *)param_2,"personality")" identifier (argument_list "((char *)param_2,"personality")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""personality"" " string_content ") )))) ;) (expression_statement "bVar5 = pcVar1 == (char *)0x0;" (assignment_expression "bVar5 = pcVar1 == (char *)0x0" identifier = (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (!bVar5) {\n      return true;\n    }" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (compound_statement "{\n      return true;\n    }" { (return_statement "return true;" return true ;) })) })) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".data";" (assignment_expression "pbVar3 = (byte *)".data"" identifier = (cast_expression "(byte *)".data"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".data"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" if (parenthesized_expression "(bVar5)" ( identifier )) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }" { (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" identifier = (call_expression "strstr((char *)param_2,"personality")" identifier (argument_list "((char *)param_2,"personality")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""personality"" " string_content ") )))) ;) (expression_statement "bVar5 = false;" (assignment_expression "bVar5 = false" identifier = false) ;) (expression_statement "bVar7 = pcVar1 == (char *)0x0;" (assignment_expression "bVar7 = pcVar1 == (char *)0x0" identifier = (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (!bVar7) {\n      return true;\n    }" if (parenthesized_expression "(!bVar7)" ( (unary_expression "!bVar7" ! identifier) )) (compound_statement "{\n      return true;\n    }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".sdata";" (assignment_expression "pbVar3 = (byte *)".sdata"" identifier = (cast_expression "(byte *)".sdata"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".sdata"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);" do (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar5 = *pbVar3 < *pbVar4;" (assignment_expression "bVar5 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar7 = *pbVar3 == *pbVar4;" (assignment_expression "bVar7 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar7)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar5 && !bVar7) == bVar5;" (assignment_expression "bVar5 = (!bVar5 && !bVar7) == bVar5" identifier = (binary_expression "(!bVar5 && !bVar7) == bVar5" (parenthesized_expression "(!bVar5 && !bVar7)" ( (binary_expression "!bVar5 && !bVar7" (unary_expression "!bVar5" ! identifier) && (unary_expression "!bVar7" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar5) goto LAB_0012213e;" if (parenthesized_expression "(bVar5)" ( identifier )) (goto_statement "goto LAB_0012213e;" goto statement_identifier ;)) (labeled_statement "LAB_00122198:\n    bVar7 = false;" statement_identifier : (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;)) (expression_statement "iVar2 = 0xf;" (assignment_expression "iVar2 = 0xf" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".gnu.linkonce.d";" (assignment_expression "pbVar3 = (byte *)".gnu.linkonce.d"" identifier = (cast_expression "(byte *)".gnu.linkonce.d"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu.linkonce.d"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);" do (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" identifier = (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar5) goto LAB_0012213e;" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (goto_statement "goto LAB_0012213e;" goto statement_identifier ;)) }) (else_clause "else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" else (compound_statement "{\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".sdata";" (assignment_expression "pbVar3 = (byte *)".sdata"" identifier = (cast_expression "(byte *)".sdata"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".sdata"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);" do (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" identifier = (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" ( (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar5) goto LAB_00122198;" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (goto_statement "goto LAB_00122198;" goto statement_identifier ;)) }))) (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" identifier = (call_expression "strstr((char *)param_2,"personality")" identifier (argument_list "((char *)param_2,"personality")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""personality"" " string_content ") )))) ;) (expression_statement "bVar5 = pcVar1 == (char *)0x0;" (assignment_expression "bVar5 = pcVar1 == (char *)0x0" identifier = (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (!bVar5) {\n    return true;\n  }" if (parenthesized_expression "(!bVar5)" ( (unary_expression "!bVar5" ! identifier) )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (labeled_statement "LAB_0012213e:\n  bVar7 = false;" statement_identifier : (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" identifier = false) ;)) (expression_statement "iVar2 = 7;" (assignment_expression "iVar2 = 7" identifier = number_literal) ;) (expression_statement "pbVar3 = (byte *)".rodata";" (assignment_expression "pbVar3 = (byte *)".rodata"" identifier = (cast_expression "(byte *)".rodata"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rodata"" " string_content "))) ;) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" identifier = identifier) ;) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);" do (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  }" { (if_statement "if (iVar2 == 0) break;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" identifier = (binary_expression "iVar2 + -1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" identifier = (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" * identifier) < (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" identifier = (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" * identifier) == (pointer_expression "*pbVar4" * identifier))) ;) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" identifier = (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" identifier + (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar5)" ( identifier )) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (if_statement "if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }" if (parenthesized_expression "((!bVar7 && !bVar5) == bVar7)" ( (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" ( (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" ! identifier) && (unary_expression "!bVar5" ! identifier)) )) == identifier) )) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }" { (expression_statement "pcVar1 = strstr((char *)param_2,"nptl_version");" (assignment_expression "pcVar1 = strstr((char *)param_2,"nptl_version")" identifier = (call_expression "strstr((char *)param_2,"nptl_version")" identifier (argument_list "((char *)param_2,"nptl_version")" ( (cast_expression "(char *)param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""nptl_version"" " string_content ") )))) ;) (expression_statement "bVar6 = pcVar1 != (char *)0x0;" (assignment_expression "bVar6 = pcVar1 != (char *)0x0" identifier = (binary_expression "pcVar1 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) })) (return_statement "return bVar6;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression & IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (return_statement return BOOL ;) })) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (return_statement return BOOL ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) })) (return_statement return IDENT ;) })))
(function_definition "bool FUN_00121fb0(undefined4 param_1,byte *param_2)\n\n{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}" (primitive_type "bool") (function_declarator "FUN_00121fb0(undefined4 param_1,byte *param_2)" (identifier "FUN_00121fb0") (parameter_list "(undefined4 param_1,byte *param_2)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "byte *param_2" (type_identifier "byte") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  char *pcVar1;\n  int iVar2;\n  byte *pbVar3;\n  byte *pbVar4;\n  bool bVar5;\n  bool bVar6;\n  bool bVar7;\n  byte bVar8;\n  \n  bVar8 = 0;\n  iVar2 = 6;\n  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;\n  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;\n  pbVar3 = (byte *)".ctors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);\n  bVar6 = false;\n  bVar5 = (!bVar5 && !bVar7) == bVar5;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 6;\n  pbVar3 = (byte *)".dtors";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".note";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".init";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".fini";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0x11;\n  pbVar3 = (byte *)".gcc_except_table";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 4;\n  pbVar3 = &DAT_002fd4f3;\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 0xe;\n  pbVar3 = (byte *)".preinit_array";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar7 = false;\n  bVar5 = (!bVar6 && !bVar5) == bVar6;\n  if (bVar5) {\n    return true;\n  }\n  iVar2 = 5;\n  pbVar3 = (byte *)".text";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }\n  bVar7 = false;\n  iVar2 = 5;\n  pbVar3 = (byte *)".data";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  bVar5 = (!bVar7 && !bVar5) == bVar7;\n  if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }\n  pcVar1 = strstr((char *)param_2,"personality");\n  bVar5 = pcVar1 == (char *)0x0;\n  if (!bVar5) {\n    return true;\n  }\nLAB_0012213e:\n  bVar7 = false;\n  iVar2 = 7;\n  pbVar3 = (byte *)".rodata";\n  pbVar4 = param_2;\n  do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);\n  bVar6 = false;\n  if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }\n  return bVar6;\n}" ({ "{") (declaration "char *pcVar1;" (primitive_type "char") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "byte *pbVar3;" (type_identifier "byte") (pointer_declarator "*pbVar3" (* "*") (identifier "pbVar3")) (; ";")) (declaration "byte *pbVar4;" (type_identifier "byte") (pointer_declarator "*pbVar4" (* "*") (identifier "pbVar4")) (; ";")) (declaration "bool bVar5;" (primitive_type "bool") (identifier "bVar5") (; ";")) (declaration "bool bVar6;" (primitive_type "bool") (identifier "bVar6") (; ";")) (declaration "bool bVar7;" (primitive_type "bool") (identifier "bVar7") (; ";")) (declaration "byte bVar8;" (type_identifier "byte") (identifier "bVar8") (; ";")) (expression_statement "bVar8 = 0;" (assignment_expression "bVar8 = 0" (identifier "bVar8") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" (identifier "iVar2") (= "=") (number_literal "6")) (; ";")) (expression_statement "bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;" (assignment_expression "bVar5 = &stack0xfffffff0 < (undefined1 *)0xc" (identifier "bVar5") (= "=") (binary_expression "&stack0xfffffff0 < (undefined1 *)0xc" (pointer_expression "&stack0xfffffff0" (& "&") (identifier "stack0xfffffff0")) (< "<") (cast_expression "(undefined1 *)0xc" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xc")))) (; ";")) (expression_statement "bVar7 = &stack0x00000000 == (undefined1 *)0x1c;" (assignment_expression "bVar7 = &stack0x00000000 == (undefined1 *)0x1c" (identifier "bVar7") (= "=") (binary_expression "&stack0x00000000 == (undefined1 *)0x1c" (pointer_expression "&stack0x00000000" (& "&") (identifier "stack0x00000000")) (== "==") (cast_expression "(undefined1 *)0x1c" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1c")))) (; ";")) (expression_statement "pbVar3 = (byte *)".ctors";" (assignment_expression "pbVar3 = (byte *)".ctors"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".ctors"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".ctors"" (" """) (string_content ".ctors") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar7);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar5 = *pbVar3 < *pbVar4;\n    bVar7 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar5 = *pbVar3 < *pbVar4;" (assignment_expression "bVar5 = *pbVar3 < *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar7 = *pbVar3 == *pbVar4;" (assignment_expression "bVar7 = *pbVar3 == *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar7)" (( "(") (identifier "bVar7") () ")")) (; ";")) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" (identifier "bVar6") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar5 && !bVar7) == bVar5;" (assignment_expression "bVar5 = (!bVar5 && !bVar7) == bVar5" (identifier "bVar5") (= "=") (binary_expression "(!bVar5 && !bVar7) == bVar5" (parenthesized_expression "(!bVar5 && !bVar7)" (( "(") (binary_expression "!bVar5 && !bVar7" (unary_expression "!bVar5" (! "!") (identifier "bVar5")) (&& "&&") (unary_expression "!bVar7" (! "!") (identifier "bVar7"))) () ")")) (== "==") (identifier "bVar5"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" (identifier "iVar2") (= "=") (number_literal "6")) (; ";")) (expression_statement "pbVar3 = (byte *)".dtors";" (assignment_expression "pbVar3 = (byte *)".dtors"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".dtors"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".dtors"" (" """) (string_content ".dtors") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" (identifier "bVar6") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" (identifier "bVar7") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" (identifier "bVar5") (= "=") (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" (( "(") (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" (! "!") (identifier "bVar6")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar6"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" (identifier "iVar2") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar3 = (byte *)".note";" (assignment_expression "pbVar3 = (byte *)".note"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".note"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".note"" (" """) (string_content ".note") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" (identifier "bVar6") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" (identifier "bVar5") (= "=") (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" (( "(") (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" (! "!") (identifier "bVar7")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar7"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" (identifier "iVar2") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar3 = (byte *)".init";" (assignment_expression "pbVar3 = (byte *)".init"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".init"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".init"" (" """) (string_content ".init") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" (identifier "bVar6") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" (identifier "bVar7") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" (identifier "bVar5") (= "=") (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" (( "(") (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" (! "!") (identifier "bVar6")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar6"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" (identifier "iVar2") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar3 = (byte *)".fini";" (assignment_expression "pbVar3 = (byte *)".fini"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".fini"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".fini"" (" """) (string_content ".fini") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" (identifier "bVar6") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" (identifier "bVar5") (= "=") (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" (( "(") (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" (! "!") (identifier "bVar7")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar7"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 0x11;" (assignment_expression "iVar2 = 0x11" (identifier "iVar2") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "pbVar3 = (byte *)".gcc_except_table";" (assignment_expression "pbVar3 = (byte *)".gcc_except_table"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".gcc_except_table"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".gcc_except_table"" (" """) (string_content ".gcc_except_table") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" (identifier "bVar6") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" (identifier "bVar7") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" (identifier "bVar5") (= "=") (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" (( "(") (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" (! "!") (identifier "bVar6")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar6"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 4;" (assignment_expression "iVar2 = 4" (identifier "iVar2") (= "=") (number_literal "4")) (; ";")) (expression_statement "pbVar3 = &DAT_002fd4f3;" (assignment_expression "pbVar3 = &DAT_002fd4f3" (identifier "pbVar3") (= "=") (pointer_expression "&DAT_002fd4f3" (& "&") (identifier "DAT_002fd4f3"))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" (identifier "bVar6") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" (identifier "bVar5") (= "=") (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" (( "(") (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" (! "!") (identifier "bVar7")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar7"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 0xe;" (assignment_expression "iVar2 = 0xe" (identifier "iVar2") (= "=") (number_literal "0xe")) (; ";")) (expression_statement "pbVar3 = (byte *)".preinit_array";" (assignment_expression "pbVar3 = (byte *)".preinit_array"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".preinit_array"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".preinit_array"" (" """) (string_content ".preinit_array") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar6 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" (identifier "bVar6") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" (identifier "bVar7") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" (identifier "bVar5") (= "=") (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" (( "(") (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" (! "!") (identifier "bVar6")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar6"))) (; ";")) (if_statement "if (bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" (identifier "iVar2") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar3 = (byte *)".text";" (assignment_expression "pbVar3 = (byte *)".text"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".text"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".text"" (" """) (string_content ".text") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + 1;\n    pbVar4 = pbVar4 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + 1;" (assignment_expression "pbVar3 = pbVar3 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + 1;" (assignment_expression "pbVar4 = pbVar4 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + 1" (identifier "pbVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" (identifier "bVar5") (= "=") (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" (( "(") (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" (! "!") (identifier "bVar7")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar7"))) (; ";")) (if_statement "if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = pcVar1 == (char *)0x0;\n    if (!bVar5) {\n      return true;\n    }\n  }" ({ "{") (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" (identifier "pcVar1") (= "=") (call_expression "strstr((char *)param_2,"personality")" (identifier "strstr") (argument_list "((char *)param_2,"personality")" (( "(") (cast_expression "(char *)param_2" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_2")) (, ",") (string_literal ""personality"" (" """) (string_content "personality") (" """)) () ")")))) (; ";")) (expression_statement "bVar5 = pcVar1 == (char *)0x0;" (assignment_expression "bVar5 = pcVar1 == (char *)0x0" (identifier "bVar5") (= "=") (binary_expression "pcVar1 == (char *)0x0" (identifier "pcVar1") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (if_statement "if (!bVar5) {\n      return true;\n    }" (if "if") (parenthesized_expression "(!bVar5)" (( "(") (unary_expression "!bVar5" (! "!") (identifier "bVar5")) () ")")) (compound_statement "{\n      return true;\n    }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (} "}"))) (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" (identifier "bVar7") (= "=") (false "false")) (; ";")) (expression_statement "iVar2 = 5;" (assignment_expression "iVar2 = 5" (identifier "iVar2") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar3 = (byte *)".data";" (assignment_expression "pbVar3 = (byte *)".data"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".data"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".data"" (" """) (string_content ".data") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" (identifier "pbVar3") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" (identifier "pbVar4") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" (identifier "bVar6") (= "=") (false "false")) (; ";")) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" (identifier "bVar5") (= "=") (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" (( "(") (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" (! "!") (identifier "bVar7")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar7"))) (; ";")) (if_statement "if (bVar5) {\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }\n  else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"personality");\n    bVar5 = false;\n    bVar7 = pcVar1 == (char *)0x0;\n    if (!bVar7) {\n      return true;\n    }\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);\n    bVar5 = (!bVar5 && !bVar7) == bVar5;\n    if (bVar5) goto LAB_0012213e;\nLAB_00122198:\n    bVar7 = false;\n    iVar2 = 0xf;\n    pbVar3 = (byte *)".gnu.linkonce.d";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar7 && !bVar5) == bVar7;\n    if (!bVar5) goto LAB_0012213e;\n  }" ({ "{") (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" (identifier "pcVar1") (= "=") (call_expression "strstr((char *)param_2,"personality")" (identifier "strstr") (argument_list "((char *)param_2,"personality")" (( "(") (cast_expression "(char *)param_2" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_2")) (, ",") (string_literal ""personality"" (" """) (string_content "personality") (" """)) () ")")))) (; ";")) (expression_statement "bVar5 = false;" (assignment_expression "bVar5 = false" (identifier "bVar5") (= "=") (false "false")) (; ";")) (expression_statement "bVar7 = pcVar1 == (char *)0x0;" (assignment_expression "bVar7 = pcVar1 == (char *)0x0" (identifier "bVar7") (= "=") (binary_expression "pcVar1 == (char *)0x0" (identifier "pcVar1") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (if_statement "if (!bVar7) {\n      return true;\n    }" (if "if") (parenthesized_expression "(!bVar7)" (( "(") (unary_expression "!bVar7" (! "!") (identifier "bVar7")) () ")")) (compound_statement "{\n      return true;\n    }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" (identifier "iVar2") (= "=") (number_literal "6")) (; ";")) (expression_statement "pbVar3 = (byte *)".sdata";" (assignment_expression "pbVar3 = (byte *)".sdata"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".sdata"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".sdata"" (" """) (string_content ".sdata") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar7);" (do "do") (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar5 = *pbVar3 < *pbVar4;\n      bVar7 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar5 = *pbVar3 < *pbVar4;" (assignment_expression "bVar5 = *pbVar3 < *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar7 = *pbVar3 == *pbVar4;" (assignment_expression "bVar7 = *pbVar3 == *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" (identifier "pbVar3") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" (identifier "pbVar4") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar7)" (( "(") (identifier "bVar7") () ")")) (; ";")) (expression_statement "bVar5 = (!bVar5 && !bVar7) == bVar5;" (assignment_expression "bVar5 = (!bVar5 && !bVar7) == bVar5" (identifier "bVar5") (= "=") (binary_expression "(!bVar5 && !bVar7) == bVar5" (parenthesized_expression "(!bVar5 && !bVar7)" (( "(") (binary_expression "!bVar5 && !bVar7" (unary_expression "!bVar5" (! "!") (identifier "bVar5")) (&& "&&") (unary_expression "!bVar7" (! "!") (identifier "bVar7"))) () ")")) (== "==") (identifier "bVar5"))) (; ";")) (if_statement "if (bVar5) goto LAB_0012213e;" (if "if") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (goto_statement "goto LAB_0012213e;" (goto "goto") (statement_identifier "LAB_0012213e") (; ";"))) (labeled_statement "LAB_00122198:\n    bVar7 = false;" (statement_identifier "LAB_00122198") (: ":") (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" (identifier "bVar7") (= "=") (false "false")) (; ";"))) (expression_statement "iVar2 = 0xf;" (assignment_expression "iVar2 = 0xf" (identifier "iVar2") (= "=") (number_literal "0xf")) (; ";")) (expression_statement "pbVar3 = (byte *)".gnu.linkonce.d";" (assignment_expression "pbVar3 = (byte *)".gnu.linkonce.d"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".gnu.linkonce.d"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".gnu.linkonce.d"" (" """) (string_content ".gnu.linkonce.d") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);" (do "do") (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar7 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" (identifier "pbVar3") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" (identifier "pbVar4") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar5 = (!bVar7 && !bVar5) == bVar7;" (assignment_expression "bVar5 = (!bVar7 && !bVar5) == bVar7" (identifier "bVar5") (= "=") (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" (( "(") (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" (! "!") (identifier "bVar7")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar7"))) (; ";")) (if_statement "if (!bVar5) goto LAB_0012213e;" (if "if") (parenthesized_expression "(!bVar5)" (( "(") (unary_expression "!bVar5" (! "!") (identifier "bVar5")) () ")")) (goto_statement "goto LAB_0012213e;" (goto "goto") (statement_identifier "LAB_0012213e") (; ";"))) (} "}")) (else_clause "else {\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" (else "else") (compound_statement "{\n    iVar2 = 6;\n    pbVar3 = (byte *)".sdata";\n    pbVar4 = param_2;\n    do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);\n    bVar5 = (!bVar6 && !bVar5) == bVar6;\n    if (!bVar5) goto LAB_00122198;\n  }" ({ "{") (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" (identifier "iVar2") (= "=") (number_literal "6")) (; ";")) (expression_statement "pbVar3 = (byte *)".sdata";" (assignment_expression "pbVar3 = (byte *)".sdata"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".sdata"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".sdata"" (" """) (string_content ".sdata") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    } while (bVar5);" (do "do") (compound_statement "{\n      if (iVar2 == 0) break;\n      iVar2 = iVar2 + -1;\n      bVar6 = *pbVar3 < *pbVar4;\n      bVar5 = *pbVar3 == *pbVar4;\n      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n    }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar6 = *pbVar3 < *pbVar4;" (assignment_expression "bVar6 = *pbVar3 < *pbVar4" (identifier "bVar6") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" (identifier "pbVar3") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" (identifier "pbVar4") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar5 = (!bVar6 && !bVar5) == bVar6;" (assignment_expression "bVar5 = (!bVar6 && !bVar5) == bVar6" (identifier "bVar5") (= "=") (binary_expression "(!bVar6 && !bVar5) == bVar6" (parenthesized_expression "(!bVar6 && !bVar5)" (( "(") (binary_expression "!bVar6 && !bVar5" (unary_expression "!bVar6" (! "!") (identifier "bVar6")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar6"))) (; ";")) (if_statement "if (!bVar5) goto LAB_00122198;" (if "if") (parenthesized_expression "(!bVar5)" (( "(") (unary_expression "!bVar5" (! "!") (identifier "bVar5")) () ")")) (goto_statement "goto LAB_00122198;" (goto "goto") (statement_identifier "LAB_00122198") (; ";"))) (} "}")))) (expression_statement "pcVar1 = strstr((char *)param_2,"personality");" (assignment_expression "pcVar1 = strstr((char *)param_2,"personality")" (identifier "pcVar1") (= "=") (call_expression "strstr((char *)param_2,"personality")" (identifier "strstr") (argument_list "((char *)param_2,"personality")" (( "(") (cast_expression "(char *)param_2" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_2")) (, ",") (string_literal ""personality"" (" """) (string_content "personality") (" """)) () ")")))) (; ";")) (expression_statement "bVar5 = pcVar1 == (char *)0x0;" (assignment_expression "bVar5 = pcVar1 == (char *)0x0" (identifier "bVar5") (= "=") (binary_expression "pcVar1 == (char *)0x0" (identifier "pcVar1") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (if_statement "if (!bVar5) {\n    return true;\n  }" (if "if") (parenthesized_expression "(!bVar5)" (( "(") (unary_expression "!bVar5" (! "!") (identifier "bVar5")) () ")")) (compound_statement "{\n    return true;\n  }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (labeled_statement "LAB_0012213e:\n  bVar7 = false;" (statement_identifier "LAB_0012213e") (: ":") (expression_statement "bVar7 = false;" (assignment_expression "bVar7 = false" (identifier "bVar7") (= "=") (false "false")) (; ";"))) (expression_statement "iVar2 = 7;" (assignment_expression "iVar2 = 7" (identifier "iVar2") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar3 = (byte *)".rodata";" (assignment_expression "pbVar3 = (byte *)".rodata"" (identifier "pbVar3") (= "=") (cast_expression "(byte *)".rodata"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".rodata"" (" """) (string_content ".rodata") (" """)))) (; ";")) (expression_statement "pbVar4 = param_2;" (assignment_expression "pbVar4 = param_2" (identifier "pbVar4") (= "=") (identifier "param_2")) (; ";")) (do_statement "do {\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  } while (bVar5);" (do "do") (compound_statement "{\n    if (iVar2 == 0) break;\n    iVar2 = iVar2 + -1;\n    bVar7 = *pbVar3 < *pbVar4;\n    bVar5 = *pbVar3 == *pbVar4;\n    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;\n    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;\n  }" ({ "{") (if_statement "if (iVar2 == 0) break;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + -1;" (assignment_expression "iVar2 = iVar2 + -1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + -1" (identifier "iVar2") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar7 = *pbVar3 < *pbVar4;" (assignment_expression "bVar7 = *pbVar3 < *pbVar4" (identifier "bVar7") (= "=") (binary_expression "*pbVar3 < *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (< "<") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "bVar5 = *pbVar3 == *pbVar4;" (assignment_expression "bVar5 = *pbVar3 == *pbVar4" (identifier "bVar5") (= "=") (binary_expression "*pbVar3 == *pbVar4" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (== "==") (pointer_expression "*pbVar4" (* "*") (identifier "pbVar4")))) (; ";")) (expression_statement "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1" (identifier "pbVar3") (= "=") (binary_expression "pbVar3 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar3 + (uint)bVar8 * -2" (identifier "pbVar3") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;" (assignment_expression "pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1" (identifier "pbVar4") (= "=") (binary_expression "pbVar4 + (uint)bVar8 * -2 + 1" (binary_expression "pbVar4 + (uint)bVar8 * -2" (identifier "pbVar4") (+ "+") (binary_expression "(uint)bVar8 * -2" (cast_expression "(uint)bVar8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar8")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar5)" (( "(") (identifier "bVar5") () ")")) (; ";")) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" (identifier "bVar6") (= "=") (false "false")) (; ";")) (if_statement "if ((!bVar7 && !bVar5) == bVar7) {\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }" (if "if") (parenthesized_expression "((!bVar7 && !bVar5) == bVar7)" (( "(") (binary_expression "(!bVar7 && !bVar5) == bVar7" (parenthesized_expression "(!bVar7 && !bVar5)" (( "(") (binary_expression "!bVar7 && !bVar5" (unary_expression "!bVar7" (! "!") (identifier "bVar7")) (&& "&&") (unary_expression "!bVar5" (! "!") (identifier "bVar5"))) () ")")) (== "==") (identifier "bVar7")) () ")")) (compound_statement "{\n    pcVar1 = strstr((char *)param_2,"nptl_version");\n    bVar6 = pcVar1 != (char *)0x0;\n  }" ({ "{") (expression_statement "pcVar1 = strstr((char *)param_2,"nptl_version");" (assignment_expression "pcVar1 = strstr((char *)param_2,"nptl_version")" (identifier "pcVar1") (= "=") (call_expression "strstr((char *)param_2,"nptl_version")" (identifier "strstr") (argument_list "((char *)param_2,"nptl_version")" (( "(") (cast_expression "(char *)param_2" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_2")) (, ",") (string_literal ""nptl_version"" (" """) (string_content "nptl_version") (" """)) () ")")))) (; ";")) (expression_statement "bVar6 = pcVar1 != (char *)0x0;" (assignment_expression "bVar6 = pcVar1 != (char *)0x0" (identifier "bVar6") (= "=") (binary_expression "pcVar1 != (char *)0x0" (identifier "pcVar1") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (} "}"))) (return_statement "return bVar6;" (return "return") (identifier "bVar6") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* DWARF original prototype: bool is_section_name_included(Relobj * this, char * name) */

bool __thiscall gold::type_1::function_1(type_1 *this,char *name)

{
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (return_statement (true)))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (return_statement (true)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (return_statement (true)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) (return_statement (identifier)))))

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

bool MASKED(undefined4 param_1,byte *param_2)

{
  char *pcVar1;
  int iVar2;
  byte *pbVar3;
  byte *pbVar4;
  bool bVar5;
  bool bVar6;
  bool bVar7;
  byte bVar8;
  
  bVar8 = 0;
  iVar2 = 6;
  bVar5 = &stack0xfffffff0 < (undefined1 *)0xc;
  bVar7 = &stack0x00000000 == (undefined1 *)0x1c;
  pbVar3 = (byte *)".ctors";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar5 = *pbVar3 < *pbVar4;
    bVar7 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar7);
  bVar6 = false;
  bVar5 = (!bVar5 && !bVar7) == bVar5;
  if (bVar5) {
    return true;
  }
  iVar2 = 6;
  pbVar3 = (byte *)".dtors";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".note";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".init";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".fini";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    return true;
  }
  iVar2 = 0x11;
  pbVar3 = (byte *)".gcc_except_table";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 4;
  pbVar3 = &DAT_002fd4f3;
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    return true;
  }
  iVar2 = 0xe;
  pbVar3 = (byte *)".preinit_array";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar6 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar7 = false;
  bVar5 = (!bVar6 && !bVar5) == bVar6;
  if (bVar5) {
    return true;
  }
  iVar2 = 5;
  pbVar3 = (byte *)".text";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + 1;
    pbVar4 = pbVar4 + 1;
  } while (bVar5);
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    pcVar1 = strstr((char *)param_2,"personality");
    bVar5 = pcVar1 == (char *)0x0;
    if (!bVar5) {
      return true;
    }
  }
  bVar7 = false;
  iVar2 = 5;
  pbVar3 = (byte *)".data";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
  } while (bVar5);
  bVar6 = false;
  bVar5 = (!bVar7 && !bVar5) == bVar7;
  if (bVar5) {
    pcVar1 = strstr((char *)param_2,"personality");
    bVar5 = false;
    bVar7 = pcVar1 == (char *)0x0;
    if (!bVar7) {
      return true;
    }
    iVar2 = 6;
    pbVar3 = (byte *)".sdata";
    pbVar4 = param_2;
    do {
      if (iVar2 == 0) break;
      iVar2 = iVar2 + -1;
      bVar5 = *pbVar3 < *pbVar4;
      bVar7 = *pbVar3 == *pbVar4;
      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
    } while (bVar7);
    bVar5 = (!bVar5 && !bVar7) == bVar5;
    if (bVar5) goto LAB_0012213e;
LAB_00122198:
    bVar7 = false;
    iVar2 = 0xf;
    pbVar3 = (byte *)".gnu.linkonce.d";
    pbVar4 = param_2;
    do {
      if (iVar2 == 0) break;
      iVar2 = iVar2 + -1;
      bVar7 = *pbVar3 < *pbVar4;
      bVar5 = *pbVar3 == *pbVar4;
      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
    } while (bVar5);
    bVar5 = (!bVar7 && !bVar5) == bVar7;
    if (!bVar5) goto LAB_0012213e;
  }
  else {
    iVar2 = 6;
    pbVar3 = (byte *)".sdata";
    pbVar4 = param_2;
    do {
      if (iVar2 == 0) break;
      iVar2 = iVar2 + -1;
      bVar6 = *pbVar3 < *pbVar4;
      bVar5 = *pbVar3 == *pbVar4;
      pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
      pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
    } while (bVar5);
    bVar5 = (!bVar6 && !bVar5) == bVar6;
    if (!bVar5) goto LAB_00122198;
  }
  pcVar1 = strstr((char *)param_2,"personality");
  bVar5 = pcVar1 == (char *)0x0;
  if (!bVar5) {
    return true;
  }
LAB_0012213e:
  bVar7 = false;
  iVar2 = 7;
  pbVar3 = (byte *)".rodata";
  pbVar4 = param_2;
  do {
    if (iVar2 == 0) break;
    iVar2 = iVar2 + -1;
    bVar7 = *pbVar3 < *pbVar4;
    bVar5 = *pbVar3 == *pbVar4;
    pbVar3 = pbVar3 + (uint)bVar8 * -2 + 1;
    pbVar4 = pbVar4 + (uint)bVar8 * -2 + 1;
  } while (bVar5);
  bVar6 = false;
  if ((!bVar7 && !bVar5) == bVar7) {
    pcVar1 = strstr((char *)param_2,"nptl_version");
    bVar6 = pcVar1 != (char *)0x0;
  }
  return bVar6;
}

