
/* WARNING: Unknown calling convention */

int yy_get_next_buffer(void)

{
  code *pcVar1;
  char *pcVar2;
  YY_BUFFER_STATE *ppyVar3;
  int iVar4;
  long lVar5;
  char *pcVar6;
  size_t sVar7;
  char *pcVar8;
  int iVar9;
  int iVar10;
  long lVar11;
  long lVar12;
  YY_BUFFER_STATE *ppyVar13;
  YY_BUFFER_STATE pyVar14;
  
  pcVar6 = yytext;
  ppyVar3 = yy_buffer_stack;
  pcVar2 = yy_c_buf_p;
  ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;
  pyVar14 = *ppyVar13;
  pcVar8 = pyVar14->yy_ch_buf;
  if (pcVar8 + (long)yy_n_chars + 1 < yy_c_buf_p) {
                    /* WARNING: Subroutine does not return */
    yy_fatal_error("fatal flex scanner internal error--end of buffer missed");
  }
  lVar12 = (long)yy_c_buf_p - (long)yytext;
  if (pyVar14->yy_fill_buffer == 0) {
    return (lVar12 != 1) + 1;
  }
  lVar11 = lVar12 + -1;
  if (lVar11 != 0) {
    lVar5 = 0;
    do {
      pcVar8[lVar5] = pcVar6[lVar5];
      lVar5 = lVar5 + 1;
    } while (lVar11 != lVar5);
    pyVar14 = *ppyVar13;
  }
  if (pyVar14->yy_buffer_status == 2) {
LAB_0011085f:
    yy_n_chars = 0;
    pyVar14->yy_n_chars = 0;
  }
  else {
    iVar9 = pyVar14->yy_buf_size - (int)lVar12;
    while (iVar9 < 1) {
      pcVar8 = pyVar14->yy_ch_buf;
      if (pyVar14->yy_is_our_buffer == 0) {
        pyVar14->yy_ch_buf = (char *)0x0;
LAB_00110804:
                    /* WARNING: Subroutine does not return */
        yy_fatal_error("fatal error - scanner input buffer overflow");
      }
      iVar9 = pyVar14->yy_buf_size;
      if (iVar9 < 1) {
        iVar4 = iVar9 + 7;
        if (-1 < iVar9) {
          iVar4 = iVar9;
        }
        iVar9 = (iVar4 >> 3) + iVar9;
      }
      else {
        iVar9 = iVar9 * 2;
      }
      pyVar14->yy_buf_size = iVar9;
      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));
      pyVar14->yy_ch_buf = pcVar6;
      if (pcVar6 == (char *)0x0) goto LAB_00110804;
      pyVar14 = *ppyVar13;
      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);
      pcVar2 = yy_c_buf_p;
      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;
    }
    if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {
                    /* WARNING: Does not return */
      pcVar1 = (code *)invalidInstructionException();
      (*pcVar1)();
    }
    if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;
    iVar4 = 0x2000;
    if (iVar9 < 0x2001) {
      iVar4 = iVar9;
    }
    sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);
    iVar9 = (int)sVar7;
    if (iVar4 <= iVar9) {
      iVar4 = 0;
      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;
      pyVar14 = *ppyVar13;
      yy_n_chars = iVar9;
      pyVar14->yy_n_chars = iVar9;
      goto LAB_001108a4;
    }
    iVar4 = ferror((FILE *)yyin);
    if (iVar4 != 0) {
      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);
      einfo(pcVar8);
    }
    iVar4 = 0;
    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;
    pyVar14 = *ppyVar13;
    yy_n_chars = iVar9;
    pyVar14->yy_n_chars = iVar9;
    if (iVar9 != 0) goto LAB_001108a4;
  }
  iVar9 = yy_n_chars;
  if (lVar11 == 0) {
    iVar4 = 1;
    yyrestart(yyin);
    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;
    pyVar14 = *ppyVar13;
    iVar9 = yy_n_chars;
  }
  else {
    iVar4 = 2;
    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;
    pyVar14 = *ppyVar13;
    pyVar14->yy_buffer_status = 2;
  }
LAB_001108a4:
  iVar10 = (uint)lVar11 + iVar9;
  pcVar8 = pyVar14->yy_ch_buf;
  if (pyVar14->yy_buf_size < iVar10) {
    pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10));
    pyVar14->yy_ch_buf = pcVar8;
    pcVar8 = (*ppyVar13)->yy_ch_buf;
    if (pcVar8 == (char *)0x0) {
                    /* WARNING: Subroutine does not return */
      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");
    }
  }
  yy_n_chars = iVar10;
  pcVar8[iVar10] = '\0';
  (*ppyVar13)->yy_ch_buf[(long)iVar10 + 1] = '\0';
  yytext = (*ppyVar13)->yy_ch_buf;
  return iVar4;
}



char FUN_00110700(void)

{
  code *pcVar1;
  ulong uVar2;
  long lVar3;
  long lVar4;
  long lVar5;
  void *pvVar6;
  size_t sVar7;
  void *pvVar8;
  undefined8 uVar9;
  int iVar10;
  char cVar11;
  int iVar12;
  long lVar13;
  long lVar14;
  long *plVar15;
  long lVar16;
  long *plVar17;
  
  lVar4 = DAT_002a66e0;
  lVar3 = DAT_002a5838;
  uVar2 = DAT_002a5828;
  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
  plVar17 = (long *)*plVar15;
  lVar16 = plVar17[1];
  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {
                    /* WARNING: Subroutine does not return */
    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");
  }
  lVar14 = DAT_002a5828 - DAT_002a66e0;
  if (*(int *)((long)plVar17 + 0x34) == 0) {
    return (lVar14 != 1) + '\x01';
  }
  lVar13 = lVar14 + -1;
  if (lVar13 != 0) {
    lVar5 = 0;
    do {
      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);
      lVar5 = lVar5 + 1;
    } while (lVar13 != lVar5);
    plVar17 = (long *)*plVar15;
  }
  if ((int)plVar17[7] == 2) {
LAB_0011085f:
    DAT_002a5830 = 0;
    *(undefined4 *)((long)plVar17 + 0x1c) = 0;
  }
  else {
    iVar10 = (int)plVar17[3] - (int)lVar14;
    while (iVar10 < 1) {
      pvVar8 = (void *)plVar17[1];
      if ((int)plVar17[4] == 0) {
        plVar17[1] = 0;
LAB_00110804:
                    /* WARNING: Subroutine does not return */
        FUN_001102f0("fatal error - scanner input buffer overflow");
      }
      iVar10 = (int)plVar17[3];
      if (iVar10 < 1) {
        iVar12 = iVar10 + 7;
        if (-1 < iVar10) {
          iVar12 = iVar10;
        }
        iVar10 = (iVar12 >> 3) + iVar10;
      }
      else {
        iVar10 = iVar10 * 2;
      }
      *(int *)(plVar17 + 3) = iVar10;
      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));
      plVar17[1] = (long)pvVar6;
      if (pvVar6 == (void *)0x0) goto LAB_00110804;
      plVar17 = (long *)*plVar15;
      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;
      uVar2 = DAT_002a5828;
      iVar10 = ~(uint)lVar13 + (int)plVar17[3];
    }
    if (lVar3 == 0) {
                    /* WARNING: Does not return */
      pcVar1 = (code *)invalidInstructionException();
      (*pcVar1)();
    }
    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;
    iVar12 = 0x2000;
    if (iVar10 < 0x2001) {
      iVar12 = iVar10;
    }
    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);
    iVar10 = (int)sVar7;
    if (iVar12 <= iVar10) {
      cVar11 = '\0';
      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
      lVar16 = *plVar15;
      DAT_002a5830 = iVar10;
      *(int *)(lVar16 + 0x1c) = iVar10;
      goto LAB_001108a4;
    }
    iVar12 = ferror(DAT_002a5678);
    if (iVar12 != 0) {
      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);
      FUN_001283c0(uVar9);
    }
    cVar11 = '\0';
    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
    lVar16 = *plVar15;
    DAT_002a5830 = iVar10;
    *(int *)(lVar16 + 0x1c) = iVar10;
    if (iVar10 != 0) goto LAB_001108a4;
  }
  iVar10 = DAT_002a5830;
  if (lVar13 == 0) {
    cVar11 = '\x01';
    FUN_00110650(DAT_002a5678);
    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
    lVar16 = *plVar15;
    iVar10 = DAT_002a5830;
  }
  else {
    cVar11 = '\x02';
    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
    lVar16 = *plVar15;
    *(undefined4 *)(lVar16 + 0x38) = 2;
  }
LAB_001108a4:
  iVar12 = (uint)lVar13 + iVar10;
  pvVar8 = *(void **)(lVar16 + 8);
  if (*(int *)(lVar16 + 0x18) < iVar12) {
    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));
    *(void **)(lVar16 + 8) = pvVar8;
    pvVar8 = *(void **)(*plVar15 + 8);
    if (pvVar8 == (void *)0x0) {
                    /* WARNING: Subroutine does not return */
      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");
    }
  }
  DAT_002a5830 = iVar12;
  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;
  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;
  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);
  return cVar11;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x8
MOV RAX,qword ptr [0x002a5848]
MOV R14,qword ptr [0x002a5838]
MOV RBX,qword ptr [0x002a5828]
MOV RSI,qword ptr [0x002a66e0]
LEA R12,[R14 + RAX*0x8]
MOVSXD RAX,dword ptr [0x002a5830]
MOV R15,qword ptr [R12]
MOV RCX,qword ptr [R15 + 0x8]
LEA RAX,[RCX + RAX*0x1 + 0x1]
CMP RBX,RAX
JA 0x00110a10
MOV EDX,dword ptr [R15 + 0x34]
MOV RDI,RBX
SUB RDI,RSI
TEST EDX,EDX
JZ 0x00110810
MOV RBP,RDI
SUB RBP,0x1
JZ 0x00110784
XOR EAX,EAX
NOP dword ptr [RAX + RAX*0x1]
MOVZX EDX,byte ptr [RSI + RAX*0x1]
MOV byte ptr [RCX + RAX*0x1],DL
ADD RAX,0x1
CMP RBP,RAX
JNZ 0x00110770
MOV R15,qword ptr [R12]
CMP dword ptr [R15 + 0x38],0x2
MOV R13D,EBP
JZ 0x0011085f
MOV EDX,dword ptr [R15 + 0x18]
SUB EDX,EDI
TEST EDX,EDX
JLE 0x001107ed
JMP 0x00110840
MOV EAX,dword ptr [R15 + 0x18]
TEST EAX,EAX
JLE 0x00110830
LEA ESI,[RAX + RAX*0x1]
MOV dword ptr [R15 + 0x18],ESI
ADD ESI,0x2
MOVSXD RSI,ESI
CALL 0x0010c960
MOV qword ptr [R15 + 0x8],RAX
TEST RAX,RAX
JZ 0x00110804
MOV R15,qword ptr [R12]
MOVSXD RBX,EBX
MOV EDX,R13D
ADD RBX,RAX
NOT EDX
ADD EDX,dword ptr [R15 + 0x18]
MOV qword ptr [0x002a5828],RBX
TEST EDX,EDX
JG 0x00110840
MOV RDI,qword ptr [R15 + 0x8]
MOV EAX,dword ptr [R15 + 0x20]
SUB RBX,RDI
TEST EAX,EAX
JNZ 0x001107a8
MOV qword ptr [R15 + 0x8],0x0
LEA RDI,[0x1570f8]
CALL 0x001102f0
XOR EBX,EBX
CMP RDI,0x1
SETNZ BL
ADD EBX,0x1
ADD RSP,0x8
MOV EAX,EBX
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
LEA ESI,[RAX + 0x7]
CMOVNS ESI,EAX
SAR ESI,0x3
ADD ESI,EAX
JMP 0x001107b7
TEST R14,R14
JZ 0x0010ce00
CMP qword ptr [R15],0x0
JZ 0x0011085f
MOV RCX,qword ptr [0x002a5678]
TEST RCX,RCX
JNZ 0x001108e8
MOV dword ptr [0x002a5830],0x0
MOV dword ptr [R15 + 0x1c],0x0
TEST RBP,RBP
JZ 0x00110940
MOV RDX,qword ptr [0x002a5848]
MOV RAX,qword ptr [0x002a5838]
MOV EBX,0x2
MOV R12D,dword ptr [0x002a5830]
LEA R13,[RAX + RDX*0x8]
MOV R14,qword ptr [R13]
MOV dword ptr [R14 + 0x38],0x2
ADD EBP,R12D
MOV RDI,qword ptr [R14 + 0x8]
CMP EBP,dword ptr [R14 + 0x18]
JG 0x00110978
MOV dword ptr [0x002a5830],EBP
MOVSXD RBP,EBP
MOV byte ptr [RDI + RBP*0x1],0x0
MOV RAX,qword ptr [R13]
MOV RAX,qword ptr [RAX + 0x8]
MOV byte ptr [RAX + RBP*0x1 + 0x1],0x0
MOV RAX,qword ptr [R13]
MOV RAX,qword ptr [RAX + 0x8]
MOV qword ptr [0x002a66e0],RAX
JMP 0x0011081c
CMP EDX,0x2000
MOV EBX,0x2000
MOV RDI,qword ptr [R15 + 0x8]
MOV ESI,0x1
CMOVLE EBX,EDX
ADD RDI,RBP
MOVSXD RDX,EBX
CALL 0x0010c260
MOV R15,RAX
MOV R12D,EAX
CMP EBX,EAX
JG 0x001109b0
MOV RDX,qword ptr [0x002a5848]
MOV RAX,qword ptr [0x002a5838]
MOV dword ptr [0x002a5830],R15D
XOR EBX,EBX
LEA R13,[RAX + RDX*0x8]
MOV R14,qword ptr [R13]
MOV dword ptr [R14 + 0x1c],R15D
JMP 0x001108a4
MOV RDI,qword ptr [0x002a5678]
MOV EBX,0x1
CALL 0x00110650
MOV RDX,qword ptr [0x002a5848]
MOV RAX,qword ptr [0x002a5838]
MOV R12D,dword ptr [0x002a5830]
LEA R13,[RAX + RDX*0x8]
MOV R14,qword ptr [R13]
JMP 0x001108a4
SAR R12D,0x1
LEA ESI,[R12 + RBP*0x1]
MOVSXD RSI,ESI
CALL 0x0010c960
MOV qword ptr [R14 + 0x8],RAX
MOV RAX,qword ptr [R13]
MOV RDI,qword ptr [RAX + 0x8]
TEST RDI,RDI
JNZ 0x001108b5
LEA RDI,[0x157150]
CALL 0x001102f0
MOV RDI,qword ptr [0x002a5678]
CALL 0x0010c1c0
TEST EAX,EAX
JNZ 0x001109f1
MOV RDX,qword ptr [0x002a5848]
MOV RAX,qword ptr [0x002a5838]
XOR EBX,EBX
LEA R13,[RAX + RDX*0x8]
MOV R14,qword ptr [R13]
MOV dword ptr [0x002a5830],R15D
MOV dword ptr [R14 + 0x1c],R15D
TEST R15D,R15D
JNZ 0x001108a4
JMP 0x00110871
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x157128]
CALL 0x0010c350
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001283c0
JMP 0x001109c0
LEA RDI,[0x1570c0]
CALL 0x001102f0
(translation_unit "char FUN_00110700(void)\n\n{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}\n\n" (function_definition "char FUN_00110700(void)\n\n{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}" primitive_type (function_declarator "FUN_00110700(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}" { (declaration "code *pcVar1;" type_identifier (pointer_declarator "*pcVar1" * identifier) ;) (declaration "ulong uVar2;" type_identifier identifier ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar4;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "void *pvVar6;" primitive_type (pointer_declarator "*pvVar6" * identifier) ;) (declaration "size_t sVar7;" primitive_type identifier ;) (declaration "void *pvVar8;" primitive_type (pointer_declarator "*pvVar8" * identifier) ;) (declaration "undefined8 uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "char cVar11;" primitive_type identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "long lVar13;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar15;" (sized_type_specifier "long" long) (pointer_declarator "*plVar15" * identifier) ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar17;" (sized_type_specifier "long" long) (pointer_declarator "*plVar17" * identifier) ;) (expression_statement "lVar4 = DAT_002a66e0;" (assignment_expression "lVar4 = DAT_002a66e0" identifier = identifier) ;) (expression_statement "lVar3 = DAT_002a5838;" (assignment_expression "lVar3 = DAT_002a5838" identifier = identifier) ;) (expression_statement "uVar2 = DAT_002a5828;" (assignment_expression "uVar2 = DAT_002a5828" identifier = identifier) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" identifier = (cast_expression "(long *)*plVar15" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar15" * identifier))) ;) (expression_statement "lVar16 = plVar17[1];" (assignment_expression "lVar16 = plVar17[1]" identifier = (subscript_expression "plVar17[1]" identifier [ number_literal ])) ;) (if_statement "if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }" if (parenthesized_expression "((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828)" ( (binary_expression "(ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828" (call_expression "(ulong)(lVar16 + 1 + (long)DAT_002a5830)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(lVar16 + 1 + (long)DAT_002a5830)" ( (binary_expression "lVar16 + 1 + (long)DAT_002a5830" (binary_expression "lVar16 + 1" identifier + number_literal) + (cast_expression "(long)DAT_002a5830" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }" { comment (expression_statement "FUN_001102f0("fatal flex scanner internal error--end of buffer missed");" (call_expression "FUN_001102f0("fatal flex scanner internal error--end of buffer missed")" identifier (argument_list "("fatal flex scanner internal error--end of buffer missed")" ( (string_literal ""fatal flex scanner internal error--end of buffer missed"" " string_content ") ))) ;) })) (expression_statement "lVar14 = DAT_002a5828 - DAT_002a66e0;" (assignment_expression "lVar14 = DAT_002a5828 - DAT_002a66e0" identifier = (binary_expression "DAT_002a5828 - DAT_002a66e0" identifier - identifier)) ;) (if_statement "if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }" if (parenthesized_expression "(*(int *)((long)plVar17 + 0x34) == 0)" ( (binary_expression "*(int *)((long)plVar17 + 0x34) == 0" (pointer_expression "*(int *)((long)plVar17 + 0x34)" * (cast_expression "(int *)((long)plVar17 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar17 + 0x34)" ( (binary_expression "(long)plVar17 + 0x34" (cast_expression "(long)plVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n    return (lVar14 != 1) + '\x01';\n  }" { (return_statement "return (lVar14 != 1) + '\x01';" return (binary_expression "(lVar14 != 1) + '\x01'" (parenthesized_expression "(lVar14 != 1)" ( (binary_expression "lVar14 != 1" identifier != number_literal) )) + (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "lVar13 = lVar14 + -1;" (assignment_expression "lVar13 = lVar14 + -1" identifier = (binary_expression "lVar14 + -1" identifier + number_literal)) ;) (if_statement "if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }" if (parenthesized_expression "(lVar13 != 0)" ( (binary_expression "lVar13 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }" { (expression_statement "lVar5 = 0;" (assignment_expression "lVar5 = 0" identifier = number_literal) ;) (do_statement "do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);" do (compound_statement "{\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    }" { (expression_statement "*(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);" (assignment_expression "*(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5)" (pointer_expression "*(undefined1 *)(lVar16 + lVar5)" * (cast_expression "(undefined1 *)(lVar16 + lVar5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + lVar5)" ( (binary_expression "lVar16 + lVar5" identifier + identifier) )))) = (pointer_expression "*(undefined1 *)(lVar4 + lVar5)" * (cast_expression "(undefined1 *)(lVar4 + lVar5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar4 + lVar5)" ( (binary_expression "lVar4 + lVar5" identifier + identifier) ))))) ;) (expression_statement "lVar5 = lVar5 + 1;" (assignment_expression "lVar5 = lVar5 + 1" identifier = (binary_expression "lVar5 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar13 != lVar5)" ( (binary_expression "lVar13 != lVar5" identifier != identifier) )) ;) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" identifier = (cast_expression "(long *)*plVar15" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar15" * identifier))) ;) })) (if_statement "if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" if (parenthesized_expression "((int)plVar17[7] == 2)" ( (binary_expression "(int)plVar17[7] == 2" (cast_expression "(int)plVar17[7]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[7]" identifier [ number_literal ])) == number_literal) )) (compound_statement "{\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }" { (labeled_statement "LAB_0011085f:\n    DAT_002a5830 = 0;" statement_identifier : (expression_statement "DAT_002a5830 = 0;" (assignment_expression "DAT_002a5830 = 0" identifier = number_literal) ;)) (expression_statement "*(undefined4 *)((long)plVar17 + 0x1c) = 0;" (assignment_expression "*(undefined4 *)((long)plVar17 + 0x1c) = 0" (pointer_expression "*(undefined4 *)((long)plVar17 + 0x1c)" * (cast_expression "(undefined4 *)((long)plVar17 + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar17 + 0x1c)" ( (binary_expression "(long)plVar17 + 0x1c" (cast_expression "(long)plVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" else (compound_statement "{\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" { (expression_statement "iVar10 = (int)plVar17[3] - (int)lVar14;" (assignment_expression "iVar10 = (int)plVar17[3] - (int)lVar14" identifier = (binary_expression "(int)plVar17[3] - (int)lVar14" (cast_expression "(int)plVar17[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[3]" identifier [ number_literal ])) - (cast_expression "(int)lVar14" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (while_statement "while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }" while (parenthesized_expression "(iVar10 < 1)" ( (binary_expression "iVar10 < 1" identifier < number_literal) )) (compound_statement "{\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }" { (expression_statement "pvVar8 = (void *)plVar17[1];" (assignment_expression "pvVar8 = (void *)plVar17[1]" identifier = (cast_expression "(void *)plVar17[1]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar17[1]" identifier [ number_literal ]))) ;) (if_statement "if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }" if (parenthesized_expression "((int)plVar17[4] == 0)" ( (binary_expression "(int)plVar17[4] == 0" (cast_expression "(int)plVar17[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[4]" identifier [ number_literal ])) == number_literal) )) (compound_statement "{\n        plVar17[1] = 0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }" { (expression_statement "plVar17[1] = 0;" (assignment_expression "plVar17[1] = 0" (subscript_expression "plVar17[1]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "LAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        FUN_001102f0("fatal error - scanner input buffer overflow");" statement_identifier : comment (expression_statement "FUN_001102f0("fatal error - scanner input buffer overflow");" (call_expression "FUN_001102f0("fatal error - scanner input buffer overflow")" identifier (argument_list "("fatal error - scanner input buffer overflow")" ( (string_literal ""fatal error - scanner input buffer overflow"" " string_content ") ))) ;)) })) (expression_statement "iVar10 = (int)plVar17[3];" (assignment_expression "iVar10 = (int)plVar17[3]" identifier = (cast_expression "(int)plVar17[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[3]" identifier [ number_literal ]))) ;) (if_statement "if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }" if (parenthesized_expression "(iVar10 < 1)" ( (binary_expression "iVar10 < 1" identifier < number_literal) )) (compound_statement "{\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }" { (expression_statement "iVar12 = iVar10 + 7;" (assignment_expression "iVar12 = iVar10 + 7" identifier = (binary_expression "iVar10 + 7" identifier + number_literal)) ;) (if_statement "if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\n          iVar12 = iVar10;\n        }" { (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" identifier = identifier) ;) })) (expression_statement "iVar10 = (iVar12 >> 3) + iVar10;" (assignment_expression "iVar10 = (iVar12 >> 3) + iVar10" identifier = (binary_expression "(iVar12 >> 3) + iVar10" (parenthesized_expression "(iVar12 >> 3)" ( (binary_expression "iVar12 >> 3" identifier >> number_literal) )) + identifier)) ;) }) (else_clause "else {\n        iVar10 = iVar10 * 2;\n      }" else (compound_statement "{\n        iVar10 = iVar10 * 2;\n      }" { (expression_statement "iVar10 = iVar10 * 2;" (assignment_expression "iVar10 = iVar10 * 2" identifier = (binary_expression "iVar10 * 2" identifier * number_literal)) ;) }))) (expression_statement "*(int *)(plVar17 + 3) = iVar10;" (assignment_expression "*(int *)(plVar17 + 3) = iVar10" (pointer_expression "*(int *)(plVar17 + 3)" * (cast_expression "(int *)(plVar17 + 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar17 + 3)" ( (binary_expression "plVar17 + 3" identifier + number_literal) )))) = identifier) ;) (expression_statement "pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));" (assignment_expression "pvVar6 = realloc(pvVar8,(long)(iVar10 + 2))" identifier = (call_expression "realloc(pvVar8,(long)(iVar10 + 2))" identifier (argument_list "(pvVar8,(long)(iVar10 + 2))" ( identifier , (cast_expression "(long)(iVar10 + 2)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(iVar10 + 2)" ( (binary_expression "iVar10 + 2" identifier + number_literal) ))) )))) ;) (expression_statement "plVar17[1] = (long)pvVar6;" (assignment_expression "plVar17[1] = (long)pvVar6" (subscript_expression "plVar17[1]" identifier [ number_literal ]) = (cast_expression "(long)pvVar6" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (pvVar6 == (void *)0x0) goto LAB_00110804;" if (parenthesized_expression "(pvVar6 == (void *)0x0)" ( (binary_expression "pvVar6 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00110804;" goto statement_identifier ;)) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" identifier = (cast_expression "(long *)*plVar15" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar15" * identifier))) ;) (expression_statement "DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;" (assignment_expression "DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6" identifier = (binary_expression "(long)((int)uVar2 - (int)pvVar8) + (long)pvVar6" (cast_expression "(long)((int)uVar2 - (int)pvVar8)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((int)uVar2 - (int)pvVar8)" ( (binary_expression "(int)uVar2 - (int)pvVar8" (cast_expression "(int)uVar2" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pvVar8" ( (type_descriptor "int" primitive_type) ) identifier)) ))) + (cast_expression "(long)pvVar6" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) ;) (expression_statement "uVar2 = DAT_002a5828;" (assignment_expression "uVar2 = DAT_002a5828" identifier = identifier) ;) (expression_statement "iVar10 = ~(uint)lVar13 + (int)plVar17[3];" (assignment_expression "iVar10 = ~(uint)lVar13 + (int)plVar17[3]" identifier = (binary_expression "~(uint)lVar13 + (int)plVar17[3]" (unary_expression "~(uint)lVar13" ~ (cast_expression "(uint)lVar13" ( (type_descriptor "uint" type_identifier) ) identifier)) + (cast_expression "(int)plVar17[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[3]" identifier [ number_literal ])))) ;) })) (if_statement "if (lVar3 == 0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" { comment (expression_statement "pcVar1 = (code *)invalidInstructionException();" (assignment_expression "pcVar1 = (code *)invalidInstructionException()" identifier = (cast_expression "(code *)invalidInstructionException()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "invalidInstructionException()" identifier (argument_list "()" ( ))))) ;) (expression_statement "(*pcVar1)();" (call_expression "(*pcVar1)()" (parenthesized_expression "(*pcVar1)" ( (pointer_expression "*pcVar1" * identifier) )) (argument_list "()" ( ))) ;) })) (if_statement "if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;" if (parenthesized_expression "((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0))" ( (binary_expression "(*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)" (parenthesized_expression "(*plVar17 == 0)" ( (binary_expression "*plVar17 == 0" (pointer_expression "*plVar17" * identifier) == number_literal) )) || (parenthesized_expression "(DAT_002a5678 == (FILE *)0x0)" ( (binary_expression "DAT_002a5678 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_0011085f;" goto statement_identifier ;)) (expression_statement "iVar12 = 0x2000;" (assignment_expression "iVar12 = 0x2000" identifier = number_literal) ;) (if_statement "if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }" if (parenthesized_expression "(iVar10 < 0x2001)" ( (binary_expression "iVar10 < 0x2001" identifier < number_literal) )) (compound_statement "{\n      iVar12 = iVar10;\n    }" { (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" identifier = identifier) ;) })) (expression_statement "sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);" (assignment_expression "sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" identifier = (call_expression "fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" identifier (argument_list "((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" ( (cast_expression "(void *)(plVar17[1] + lVar13)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar17[1] + lVar13)" ( (binary_expression "plVar17[1] + lVar13" (subscript_expression "plVar17[1]" identifier [ number_literal ]) + identifier) ))) , number_literal , (cast_expression "(long)iVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) , identifier )))) ;) (expression_statement "iVar10 = (int)sVar7;" (assignment_expression "iVar10 = (int)sVar7" identifier = (cast_expression "(int)sVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }" if (parenthesized_expression "(iVar12 <= iVar10)" ( (binary_expression "iVar12 <= iVar10" identifier <= identifier) )) (compound_statement "{\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }" { (expression_statement "cVar11 = '\0';" (assignment_expression "cVar11 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "DAT_002a5830 = iVar10;" (assignment_expression "DAT_002a5830 = iVar10" identifier = identifier) ;) (expression_statement "*(int *)(lVar16 + 0x1c) = iVar10;" (assignment_expression "*(int *)(lVar16 + 0x1c) = iVar10" (pointer_expression "*(int *)(lVar16 + 0x1c)" * (cast_expression "(int *)(lVar16 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x1c)" ( (binary_expression "lVar16 + 0x1c" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_001108a4;" goto statement_identifier ;) })) (expression_statement "iVar12 = ferror(DAT_002a5678);" (assignment_expression "iVar12 = ferror(DAT_002a5678)" identifier = (call_expression "ferror(DAT_002a5678)" identifier (argument_list "(DAT_002a5678)" ( identifier )))) ;) (if_statement "if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }" { (expression_statement "uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);" (assignment_expression "uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5)" identifier = (call_expression "dcgettext(0,"%F%P: read in flex scanner failed\n",5)" identifier (argument_list "(0,"%F%P: read in flex scanner failed\n",5)" ( number_literal , (string_literal ""%F%P: read in flex scanner failed\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_001283c0(uVar9);" (call_expression "FUN_001283c0(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) })) (expression_statement "cVar11 = '\0';" (assignment_expression "cVar11 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "DAT_002a5830 = iVar10;" (assignment_expression "DAT_002a5830 = iVar10" identifier = identifier) ;) (expression_statement "*(int *)(lVar16 + 0x1c) = iVar10;" (assignment_expression "*(int *)(lVar16 + 0x1c) = iVar10" (pointer_expression "*(int *)(lVar16 + 0x1c)" * (cast_expression "(int *)(lVar16 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x1c)" ( (binary_expression "lVar16 + 0x1c" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar10 != 0) goto LAB_001108a4;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_001108a4;" goto statement_identifier ;)) }))) (expression_statement "iVar10 = DAT_002a5830;" (assignment_expression "iVar10 = DAT_002a5830" identifier = identifier) ;) (if_statement "if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" if (parenthesized_expression "(lVar13 == 0)" ( (binary_expression "lVar13 == 0" identifier == number_literal) )) (compound_statement "{\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }" { (expression_statement "cVar11 = '\x01';" (assignment_expression "cVar11 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "FUN_00110650(DAT_002a5678);" (call_expression "FUN_00110650(DAT_002a5678)" identifier (argument_list "(DAT_002a5678)" ( identifier ))) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "iVar10 = DAT_002a5830;" (assignment_expression "iVar10 = DAT_002a5830" identifier = identifier) ;) }) (else_clause "else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" else (compound_statement "{\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" { (expression_statement "cVar11 = '\x02';" (assignment_expression "cVar11 = '\x02'" identifier = (char_literal "'\x02'" ' escape_sequence ')) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "*(undefined4 *)(lVar16 + 0x38) = 2;" (assignment_expression "*(undefined4 *)(lVar16 + 0x38) = 2" (pointer_expression "*(undefined4 *)(lVar16 + 0x38)" * (cast_expression "(undefined4 *)(lVar16 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x38)" ( (binary_expression "lVar16 + 0x38" identifier + number_literal) )))) = number_literal) ;) }))) (labeled_statement "LAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;" statement_identifier : (expression_statement "iVar12 = (uint)lVar13 + iVar10;" (assignment_expression "iVar12 = (uint)lVar13 + iVar10" identifier = (binary_expression "(uint)lVar13 + iVar10" (cast_expression "(uint)lVar13" ( (type_descriptor "uint" type_identifier) ) identifier) + identifier)) ;)) (expression_statement "pvVar8 = *(void **)(lVar16 + 8);" (assignment_expression "pvVar8 = *(void **)(lVar16 + 8)" identifier = (pointer_expression "*(void **)(lVar16 + 8)" * (cast_expression "(void **)(lVar16 + 8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar16 + 8)" ( (binary_expression "lVar16 + 8" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" if (parenthesized_expression "(*(int *)(lVar16 + 0x18) < iVar12)" ( (binary_expression "*(int *)(lVar16 + 0x18) < iVar12" (pointer_expression "*(int *)(lVar16 + 0x18)" * (cast_expression "(int *)(lVar16 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x18)" ( (binary_expression "lVar16 + 0x18" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" { (expression_statement "pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));" (assignment_expression "pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12))" identifier = (call_expression "realloc(pvVar8,(long)((iVar10 >> 1) + iVar12))" identifier (argument_list "(pvVar8,(long)((iVar10 >> 1) + iVar12))" ( identifier , (cast_expression "(long)((iVar10 >> 1) + iVar12)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((iVar10 >> 1) + iVar12)" ( (binary_expression "(iVar10 >> 1) + iVar12" (parenthesized_expression "(iVar10 >> 1)" ( (binary_expression "iVar10 >> 1" identifier >> number_literal) )) + identifier) ))) )))) ;) (expression_statement "*(void **)(lVar16 + 8) = pvVar8;" (assignment_expression "*(void **)(lVar16 + 8) = pvVar8" (pointer_expression "*(void **)(lVar16 + 8)" * (cast_expression "(void **)(lVar16 + 8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar16 + 8)" ( (binary_expression "lVar16 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "pvVar8 = *(void **)(*plVar15 + 8);" (assignment_expression "pvVar8 = *(void **)(*plVar15 + 8)" identifier = (pointer_expression "*(void **)(*plVar15 + 8)" * (cast_expression "(void **)(*plVar15 + 8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar15 + 8)" ( (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" * identifier) + number_literal) ))))) ;) (if_statement "if (pvVar8 == (void *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }" if (parenthesized_expression "(pvVar8 == (void *)0x0)" ( (binary_expression "pvVar8 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }" { comment (expression_statement "FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");" (call_expression "FUN_001102f0("out of dynamic memory in yy_get_next_buffer()")" identifier (argument_list "("out of dynamic memory in yy_get_next_buffer()")" ( (string_literal ""out of dynamic memory in yy_get_next_buffer()"" " string_content ") ))) ;) })) })) (expression_statement "DAT_002a5830 = iVar12;" (assignment_expression "DAT_002a5830 = iVar12" identifier = identifier) ;) (expression_statement "*(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;" (assignment_expression "*(undefined1 *)((long)pvVar8 + (long)iVar12) = 0" (pointer_expression "*(undefined1 *)((long)pvVar8 + (long)iVar12)" * (cast_expression "(undefined1 *)((long)pvVar8 + (long)iVar12)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)pvVar8 + (long)iVar12)" ( (binary_expression "(long)pvVar8 + (long)iVar12" (cast_expression "(long)pvVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (cast_expression "(long)iVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;" (assignment_expression "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0" (pointer_expression "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" * (cast_expression "(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" ( (binary_expression "*(long *)(*plVar15 + 8) + 1 + (long)iVar12" (binary_expression "*(long *)(*plVar15 + 8) + 1" (pointer_expression "*(long *)(*plVar15 + 8)" * (cast_expression "(long *)(*plVar15 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*plVar15 + 8)" ( (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" * identifier) + number_literal) )))) + number_literal) + (cast_expression "(long)iVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);" (assignment_expression "DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8)" identifier = (pointer_expression "*(undefined8 *)(*plVar15 + 8)" * (cast_expression "(undefined8 *)(*plVar15 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*plVar15 + 8)" ( (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" * identifier) + number_literal) ))))) ;) (return_statement "return cVar11;" return identifier ;) })))
(translation_unit "/* WARNING: Unknown calling convention */\n\nint yy_get_next_buffer(void)\n\n{\n  code *pcVar1;\n  char *pcVar2;\n  YY_BUFFER_STATE *ppyVar3;\n  int iVar4;\n  long lVar5;\n  char *pcVar6;\n  size_t sVar7;\n  char *pcVar8;\n  int iVar9;\n  int iVar10;\n  long lVar11;\n  long lVar12;\n  YY_BUFFER_STATE *ppyVar13;\n  YY_BUFFER_STATE pyVar14;\n  \n  pcVar6 = yytext;\n  ppyVar3 = yy_buffer_stack;\n  pcVar2 = yy_c_buf_p;\n  ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n  pyVar14 = *ppyVar13;\n  pcVar8 = pyVar14->yy_ch_buf;\n  if (pcVar8 + (long)yy_n_chars + 1 < yy_c_buf_p) {\n                    /* WARNING: Subroutine does not return */\n    yy_fatal_error("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar12 = (long)yy_c_buf_p - (long)yytext;\n  if (pyVar14->yy_fill_buffer == 0) {\n    return (lVar12 != 1) + 1;\n  }\n  lVar11 = lVar12 + -1;\n  if (lVar11 != 0) {\n    lVar5 = 0;\n    do {\n      pcVar8[lVar5] = pcVar6[lVar5];\n      lVar5 = lVar5 + 1;\n    } while (lVar11 != lVar5);\n    pyVar14 = *ppyVar13;\n  }\n  if (pyVar14->yy_buffer_status == 2) {\nLAB_0011085f:\n    yy_n_chars = 0;\n    pyVar14->yy_n_chars = 0;\n  }\n  else {\n    iVar9 = pyVar14->yy_buf_size - (int)lVar12;\n    while (iVar9 < 1) {\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }\n    if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;\n    iVar4 = 0x2000;\n    if (iVar9 < 0x2001) {\n      iVar4 = iVar9;\n    }\n    sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);\n    iVar9 = (int)sVar7;\n    if (iVar4 <= iVar9) {\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }\n    iVar4 = ferror((FILE *)yyin);\n    if (iVar4 != 0) {\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }\n    iVar4 = 0;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    yy_n_chars = iVar9;\n    pyVar14->yy_n_chars = iVar9;\n    if (iVar9 != 0) goto LAB_001108a4;\n  }\n  iVar9 = yy_n_chars;\n  if (lVar11 == 0) {\n    iVar4 = 1;\n    yyrestart(yyin);\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    iVar9 = yy_n_chars;\n  }\n  else {\n    iVar4 = 2;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    pyVar14->yy_buffer_status = 2;\n  }\nLAB_001108a4:\n  iVar10 = (uint)lVar11 + iVar9;\n  pcVar8 = pyVar14->yy_ch_buf;\n  if (pyVar14->yy_buf_size < iVar10) {\n    pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10));\n    pyVar14->yy_ch_buf = pcVar8;\n    pcVar8 = (*ppyVar13)->yy_ch_buf;\n    if (pcVar8 == (char *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  yy_n_chars = iVar10;\n  pcVar8[iVar10] = '\0';\n  (*ppyVar13)->yy_ch_buf[(long)iVar10 + 1] = '\0';\n  yytext = (*ppyVar13)->yy_ch_buf;\n  return iVar4;\n}\n\n" comment (function_definition "int yy_get_next_buffer(void)\n\n{\n  code *pcVar1;\n  char *pcVar2;\n  YY_BUFFER_STATE *ppyVar3;\n  int iVar4;\n  long lVar5;\n  char *pcVar6;\n  size_t sVar7;\n  char *pcVar8;\n  int iVar9;\n  int iVar10;\n  long lVar11;\n  long lVar12;\n  YY_BUFFER_STATE *ppyVar13;\n  YY_BUFFER_STATE pyVar14;\n  \n  pcVar6 = yytext;\n  ppyVar3 = yy_buffer_stack;\n  pcVar2 = yy_c_buf_p;\n  ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n  pyVar14 = *ppyVar13;\n  pcVar8 = pyVar14->yy_ch_buf;\n  if (pcVar8 + (long)yy_n_chars + 1 < yy_c_buf_p) {\n                    /* WARNING: Subroutine does not return */\n    yy_fatal_error("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar12 = (long)yy_c_buf_p - (long)yytext;\n  if (pyVar14->yy_fill_buffer == 0) {\n    return (lVar12 != 1) + 1;\n  }\n  lVar11 = lVar12 + -1;\n  if (lVar11 != 0) {\n    lVar5 = 0;\n    do {\n      pcVar8[lVar5] = pcVar6[lVar5];\n      lVar5 = lVar5 + 1;\n    } while (lVar11 != lVar5);\n    pyVar14 = *ppyVar13;\n  }\n  if (pyVar14->yy_buffer_status == 2) {\nLAB_0011085f:\n    yy_n_chars = 0;\n    pyVar14->yy_n_chars = 0;\n  }\n  else {\n    iVar9 = pyVar14->yy_buf_size - (int)lVar12;\n    while (iVar9 < 1) {\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }\n    if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;\n    iVar4 = 0x2000;\n    if (iVar9 < 0x2001) {\n      iVar4 = iVar9;\n    }\n    sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);\n    iVar9 = (int)sVar7;\n    if (iVar4 <= iVar9) {\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }\n    iVar4 = ferror((FILE *)yyin);\n    if (iVar4 != 0) {\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }\n    iVar4 = 0;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    yy_n_chars = iVar9;\n    pyVar14->yy_n_chars = iVar9;\n    if (iVar9 != 0) goto LAB_001108a4;\n  }\n  iVar9 = yy_n_chars;\n  if (lVar11 == 0) {\n    iVar4 = 1;\n    yyrestart(yyin);\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    iVar9 = yy_n_chars;\n  }\n  else {\n    iVar4 = 2;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    pyVar14->yy_buffer_status = 2;\n  }\nLAB_001108a4:\n  iVar10 = (uint)lVar11 + iVar9;\n  pcVar8 = pyVar14->yy_ch_buf;\n  if (pyVar14->yy_buf_size < iVar10) {\n    pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10));\n    pyVar14->yy_ch_buf = pcVar8;\n    pcVar8 = (*ppyVar13)->yy_ch_buf;\n    if (pcVar8 == (char *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  yy_n_chars = iVar10;\n  pcVar8[iVar10] = '\0';\n  (*ppyVar13)->yy_ch_buf[(long)iVar10 + 1] = '\0';\n  yytext = (*ppyVar13)->yy_ch_buf;\n  return iVar4;\n}" primitive_type (function_declarator "yy_get_next_buffer(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  code *pcVar1;\n  char *pcVar2;\n  YY_BUFFER_STATE *ppyVar3;\n  int iVar4;\n  long lVar5;\n  char *pcVar6;\n  size_t sVar7;\n  char *pcVar8;\n  int iVar9;\n  int iVar10;\n  long lVar11;\n  long lVar12;\n  YY_BUFFER_STATE *ppyVar13;\n  YY_BUFFER_STATE pyVar14;\n  \n  pcVar6 = yytext;\n  ppyVar3 = yy_buffer_stack;\n  pcVar2 = yy_c_buf_p;\n  ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n  pyVar14 = *ppyVar13;\n  pcVar8 = pyVar14->yy_ch_buf;\n  if (pcVar8 + (long)yy_n_chars + 1 < yy_c_buf_p) {\n                    /* WARNING: Subroutine does not return */\n    yy_fatal_error("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar12 = (long)yy_c_buf_p - (long)yytext;\n  if (pyVar14->yy_fill_buffer == 0) {\n    return (lVar12 != 1) + 1;\n  }\n  lVar11 = lVar12 + -1;\n  if (lVar11 != 0) {\n    lVar5 = 0;\n    do {\n      pcVar8[lVar5] = pcVar6[lVar5];\n      lVar5 = lVar5 + 1;\n    } while (lVar11 != lVar5);\n    pyVar14 = *ppyVar13;\n  }\n  if (pyVar14->yy_buffer_status == 2) {\nLAB_0011085f:\n    yy_n_chars = 0;\n    pyVar14->yy_n_chars = 0;\n  }\n  else {\n    iVar9 = pyVar14->yy_buf_size - (int)lVar12;\n    while (iVar9 < 1) {\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }\n    if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;\n    iVar4 = 0x2000;\n    if (iVar9 < 0x2001) {\n      iVar4 = iVar9;\n    }\n    sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);\n    iVar9 = (int)sVar7;\n    if (iVar4 <= iVar9) {\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }\n    iVar4 = ferror((FILE *)yyin);\n    if (iVar4 != 0) {\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }\n    iVar4 = 0;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    yy_n_chars = iVar9;\n    pyVar14->yy_n_chars = iVar9;\n    if (iVar9 != 0) goto LAB_001108a4;\n  }\n  iVar9 = yy_n_chars;\n  if (lVar11 == 0) {\n    iVar4 = 1;\n    yyrestart(yyin);\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    iVar9 = yy_n_chars;\n  }\n  else {\n    iVar4 = 2;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    pyVar14->yy_buffer_status = 2;\n  }\nLAB_001108a4:\n  iVar10 = (uint)lVar11 + iVar9;\n  pcVar8 = pyVar14->yy_ch_buf;\n  if (pyVar14->yy_buf_size < iVar10) {\n    pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10));\n    pyVar14->yy_ch_buf = pcVar8;\n    pcVar8 = (*ppyVar13)->yy_ch_buf;\n    if (pcVar8 == (char *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  yy_n_chars = iVar10;\n  pcVar8[iVar10] = '\0';\n  (*ppyVar13)->yy_ch_buf[(long)iVar10 + 1] = '\0';\n  yytext = (*ppyVar13)->yy_ch_buf;\n  return iVar4;\n}" { (declaration "code *pcVar1;" type_identifier (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "YY_BUFFER_STATE *ppyVar3;" type_identifier (pointer_declarator "*ppyVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "size_t sVar7;" primitive_type identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "long lVar11;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar12;" (sized_type_specifier "long" long) identifier ;) (declaration "YY_BUFFER_STATE *ppyVar13;" type_identifier (pointer_declarator "*ppyVar13" * identifier) ;) (declaration "YY_BUFFER_STATE pyVar14;" type_identifier identifier ;) (expression_statement "pcVar6 = yytext;" (assignment_expression "pcVar6 = yytext" identifier = identifier) ;) (expression_statement "ppyVar3 = yy_buffer_stack;" (assignment_expression "ppyVar3 = yy_buffer_stack" identifier = identifier) ;) (expression_statement "pcVar2 = yy_c_buf_p;" (assignment_expression "pcVar2 = yy_c_buf_p" identifier = identifier) ;) (expression_statement "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;" (assignment_expression "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top" identifier = (binary_expression "yy_buffer_stack + yy_buffer_stack_top" identifier + identifier)) ;) (expression_statement "pyVar14 = *ppyVar13;" (assignment_expression "pyVar14 = *ppyVar13" identifier = (pointer_expression "*ppyVar13" * identifier)) ;) (expression_statement "pcVar8 = pyVar14->yy_ch_buf;" (assignment_expression "pcVar8 = pyVar14->yy_ch_buf" identifier = (field_expression "pyVar14->yy_ch_buf" identifier -> field_identifier)) ;) (if_statement "if (pcVar8 + (long)yy_n_chars + 1 < yy_c_buf_p) {\n                    /* WARNING: Subroutine does not return */\n    yy_fatal_error("fatal flex scanner internal error--end of buffer missed");\n  }" if (parenthesized_expression "(pcVar8 + (long)yy_n_chars + 1 < yy_c_buf_p)" ( (binary_expression "pcVar8 + (long)yy_n_chars + 1 < yy_c_buf_p" (binary_expression "pcVar8 + (long)yy_n_chars + 1" (binary_expression "pcVar8 + (long)yy_n_chars" identifier + (cast_expression "(long)yy_n_chars" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) + number_literal) < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    yy_fatal_error("fatal flex scanner internal error--end of buffer missed");\n  }" { comment (expression_statement "yy_fatal_error("fatal flex scanner internal error--end of buffer missed");" (call_expression "yy_fatal_error("fatal flex scanner internal error--end of buffer missed")" identifier (argument_list "("fatal flex scanner internal error--end of buffer missed")" ( (string_literal ""fatal flex scanner internal error--end of buffer missed"" " string_content ") ))) ;) })) (expression_statement "lVar12 = (long)yy_c_buf_p - (long)yytext;" (assignment_expression "lVar12 = (long)yy_c_buf_p - (long)yytext" identifier = (binary_expression "(long)yy_c_buf_p - (long)yytext" (cast_expression "(long)yy_c_buf_p" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)yytext" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) ;) (if_statement "if (pyVar14->yy_fill_buffer == 0) {\n    return (lVar12 != 1) + 1;\n  }" if (parenthesized_expression "(pyVar14->yy_fill_buffer == 0)" ( (binary_expression "pyVar14->yy_fill_buffer == 0" (field_expression "pyVar14->yy_fill_buffer" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    return (lVar12 != 1) + 1;\n  }" { (return_statement "return (lVar12 != 1) + 1;" return (binary_expression "(lVar12 != 1) + 1" (parenthesized_expression "(lVar12 != 1)" ( (binary_expression "lVar12 != 1" identifier != number_literal) )) + number_literal) ;) })) (expression_statement "lVar11 = lVar12 + -1;" (assignment_expression "lVar11 = lVar12 + -1" identifier = (binary_expression "lVar12 + -1" identifier + number_literal)) ;) (if_statement "if (lVar11 != 0) {\n    lVar5 = 0;\n    do {\n      pcVar8[lVar5] = pcVar6[lVar5];\n      lVar5 = lVar5 + 1;\n    } while (lVar11 != lVar5);\n    pyVar14 = *ppyVar13;\n  }" if (parenthesized_expression "(lVar11 != 0)" ( (binary_expression "lVar11 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar5 = 0;\n    do {\n      pcVar8[lVar5] = pcVar6[lVar5];\n      lVar5 = lVar5 + 1;\n    } while (lVar11 != lVar5);\n    pyVar14 = *ppyVar13;\n  }" { (expression_statement "lVar5 = 0;" (assignment_expression "lVar5 = 0" identifier = number_literal) ;) (do_statement "do {\n      pcVar8[lVar5] = pcVar6[lVar5];\n      lVar5 = lVar5 + 1;\n    } while (lVar11 != lVar5);" do (compound_statement "{\n      pcVar8[lVar5] = pcVar6[lVar5];\n      lVar5 = lVar5 + 1;\n    }" { (expression_statement "pcVar8[lVar5] = pcVar6[lVar5];" (assignment_expression "pcVar8[lVar5] = pcVar6[lVar5]" (subscript_expression "pcVar8[lVar5]" identifier [ identifier ]) = (subscript_expression "pcVar6[lVar5]" identifier [ identifier ])) ;) (expression_statement "lVar5 = lVar5 + 1;" (assignment_expression "lVar5 = lVar5 + 1" identifier = (binary_expression "lVar5 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar11 != lVar5)" ( (binary_expression "lVar11 != lVar5" identifier != identifier) )) ;) (expression_statement "pyVar14 = *ppyVar13;" (assignment_expression "pyVar14 = *ppyVar13" identifier = (pointer_expression "*ppyVar13" * identifier)) ;) })) (if_statement "if (pyVar14->yy_buffer_status == 2) {\nLAB_0011085f:\n    yy_n_chars = 0;\n    pyVar14->yy_n_chars = 0;\n  }\n  else {\n    iVar9 = pyVar14->yy_buf_size - (int)lVar12;\n    while (iVar9 < 1) {\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }\n    if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;\n    iVar4 = 0x2000;\n    if (iVar9 < 0x2001) {\n      iVar4 = iVar9;\n    }\n    sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);\n    iVar9 = (int)sVar7;\n    if (iVar4 <= iVar9) {\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }\n    iVar4 = ferror((FILE *)yyin);\n    if (iVar4 != 0) {\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }\n    iVar4 = 0;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    yy_n_chars = iVar9;\n    pyVar14->yy_n_chars = iVar9;\n    if (iVar9 != 0) goto LAB_001108a4;\n  }" if (parenthesized_expression "(pyVar14->yy_buffer_status == 2)" ( (binary_expression "pyVar14->yy_buffer_status == 2" (field_expression "pyVar14->yy_buffer_status" identifier -> field_identifier) == number_literal) )) (compound_statement "{\nLAB_0011085f:\n    yy_n_chars = 0;\n    pyVar14->yy_n_chars = 0;\n  }" { (labeled_statement "LAB_0011085f:\n    yy_n_chars = 0;" statement_identifier : (expression_statement "yy_n_chars = 0;" (assignment_expression "yy_n_chars = 0" identifier = number_literal) ;)) (expression_statement "pyVar14->yy_n_chars = 0;" (assignment_expression "pyVar14->yy_n_chars = 0" (field_expression "pyVar14->yy_n_chars" identifier -> field_identifier) = number_literal) ;) }) (else_clause "else {\n    iVar9 = pyVar14->yy_buf_size - (int)lVar12;\n    while (iVar9 < 1) {\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }\n    if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;\n    iVar4 = 0x2000;\n    if (iVar9 < 0x2001) {\n      iVar4 = iVar9;\n    }\n    sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);\n    iVar9 = (int)sVar7;\n    if (iVar4 <= iVar9) {\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }\n    iVar4 = ferror((FILE *)yyin);\n    if (iVar4 != 0) {\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }\n    iVar4 = 0;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    yy_n_chars = iVar9;\n    pyVar14->yy_n_chars = iVar9;\n    if (iVar9 != 0) goto LAB_001108a4;\n  }" else (compound_statement "{\n    iVar9 = pyVar14->yy_buf_size - (int)lVar12;\n    while (iVar9 < 1) {\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }\n    if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;\n    iVar4 = 0x2000;\n    if (iVar9 < 0x2001) {\n      iVar4 = iVar9;\n    }\n    sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);\n    iVar9 = (int)sVar7;\n    if (iVar4 <= iVar9) {\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }\n    iVar4 = ferror((FILE *)yyin);\n    if (iVar4 != 0) {\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }\n    iVar4 = 0;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    yy_n_chars = iVar9;\n    pyVar14->yy_n_chars = iVar9;\n    if (iVar9 != 0) goto LAB_001108a4;\n  }" { (expression_statement "iVar9 = pyVar14->yy_buf_size - (int)lVar12;" (assignment_expression "iVar9 = pyVar14->yy_buf_size - (int)lVar12" identifier = (binary_expression "pyVar14->yy_buf_size - (int)lVar12" (field_expression "pyVar14->yy_buf_size" identifier -> field_identifier) - (cast_expression "(int)lVar12" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (while_statement "while (iVar9 < 1) {\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }" while (parenthesized_expression "(iVar9 < 1)" ( (binary_expression "iVar9 < 1" identifier < number_literal) )) (compound_statement "{\n      pcVar8 = pyVar14->yy_ch_buf;\n      if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }\n      iVar9 = pyVar14->yy_buf_size;\n      if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }\n      pyVar14->yy_buf_size = iVar9;\n      pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));\n      pyVar14->yy_ch_buf = pcVar6;\n      if (pcVar6 == (char *)0x0) goto LAB_00110804;\n      pyVar14 = *ppyVar13;\n      yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);\n      pcVar2 = yy_c_buf_p;\n      iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;\n    }" { (expression_statement "pcVar8 = pyVar14->yy_ch_buf;" (assignment_expression "pcVar8 = pyVar14->yy_ch_buf" identifier = (field_expression "pyVar14->yy_ch_buf" identifier -> field_identifier)) ;) (if_statement "if (pyVar14->yy_is_our_buffer == 0) {\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }" if (parenthesized_expression "(pyVar14->yy_is_our_buffer == 0)" ( (binary_expression "pyVar14->yy_is_our_buffer == 0" (field_expression "pyVar14->yy_is_our_buffer" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n        pyVar14->yy_ch_buf = (char *)0x0;\nLAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");\n      }" { (expression_statement "pyVar14->yy_ch_buf = (char *)0x0;" (assignment_expression "pyVar14->yy_ch_buf = (char *)0x0" (field_expression "pyVar14->yy_ch_buf" identifier -> field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00110804:\n                    /* WARNING: Subroutine does not return */\n        yy_fatal_error("fatal error - scanner input buffer overflow");" statement_identifier : comment (expression_statement "yy_fatal_error("fatal error - scanner input buffer overflow");" (call_expression "yy_fatal_error("fatal error - scanner input buffer overflow")" identifier (argument_list "("fatal error - scanner input buffer overflow")" ( (string_literal ""fatal error - scanner input buffer overflow"" " string_content ") ))) ;)) })) (expression_statement "iVar9 = pyVar14->yy_buf_size;" (assignment_expression "iVar9 = pyVar14->yy_buf_size" identifier = (field_expression "pyVar14->yy_buf_size" identifier -> field_identifier)) ;) (if_statement "if (iVar9 < 1) {\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }\n      else {\n        iVar9 = iVar9 * 2;\n      }" if (parenthesized_expression "(iVar9 < 1)" ( (binary_expression "iVar9 < 1" identifier < number_literal) )) (compound_statement "{\n        iVar4 = iVar9 + 7;\n        if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }\n        iVar9 = (iVar4 >> 3) + iVar9;\n      }" { (expression_statement "iVar4 = iVar9 + 7;" (assignment_expression "iVar4 = iVar9 + 7" identifier = (binary_expression "iVar9 + 7" identifier + number_literal)) ;) (if_statement "if (-1 < iVar9) {\n          iVar4 = iVar9;\n        }" if (parenthesized_expression "(-1 < iVar9)" ( (binary_expression "-1 < iVar9" number_literal < identifier) )) (compound_statement "{\n          iVar4 = iVar9;\n        }" { (expression_statement "iVar4 = iVar9;" (assignment_expression "iVar4 = iVar9" identifier = identifier) ;) })) (expression_statement "iVar9 = (iVar4 >> 3) + iVar9;" (assignment_expression "iVar9 = (iVar4 >> 3) + iVar9" identifier = (binary_expression "(iVar4 >> 3) + iVar9" (parenthesized_expression "(iVar4 >> 3)" ( (binary_expression "iVar4 >> 3" identifier >> number_literal) )) + identifier)) ;) }) (else_clause "else {\n        iVar9 = iVar9 * 2;\n      }" else (compound_statement "{\n        iVar9 = iVar9 * 2;\n      }" { (expression_statement "iVar9 = iVar9 * 2;" (assignment_expression "iVar9 = iVar9 * 2" identifier = (binary_expression "iVar9 * 2" identifier * number_literal)) ;) }))) (expression_statement "pyVar14->yy_buf_size = iVar9;" (assignment_expression "pyVar14->yy_buf_size = iVar9" (field_expression "pyVar14->yy_buf_size" identifier -> field_identifier) = identifier) ;) (expression_statement "pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2));" (assignment_expression "pcVar6 = (char *)realloc(pcVar8,(long)(iVar9 + 2))" identifier = (cast_expression "(char *)realloc(pcVar8,(long)(iVar9 + 2))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "realloc(pcVar8,(long)(iVar9 + 2))" identifier (argument_list "(pcVar8,(long)(iVar9 + 2))" ( identifier , (cast_expression "(long)(iVar9 + 2)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(iVar9 + 2)" ( (binary_expression "iVar9 + 2" identifier + number_literal) ))) ))))) ;) (expression_statement "pyVar14->yy_ch_buf = pcVar6;" (assignment_expression "pyVar14->yy_ch_buf = pcVar6" (field_expression "pyVar14->yy_ch_buf" identifier -> field_identifier) = identifier) ;) (if_statement "if (pcVar6 == (char *)0x0) goto LAB_00110804;" if (parenthesized_expression "(pcVar6 == (char *)0x0)" ( (binary_expression "pcVar6 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00110804;" goto statement_identifier ;)) (expression_statement "pyVar14 = *ppyVar13;" (assignment_expression "pyVar14 = *ppyVar13" identifier = (pointer_expression "*ppyVar13" * identifier)) ;) (expression_statement "yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8);" (assignment_expression "yy_c_buf_p = pcVar6 + ((int)pcVar2 - (int)pcVar8)" identifier = (binary_expression "pcVar6 + ((int)pcVar2 - (int)pcVar8)" identifier + (parenthesized_expression "((int)pcVar2 - (int)pcVar8)" ( (binary_expression "(int)pcVar2 - (int)pcVar8" (cast_expression "(int)pcVar2" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pcVar2 = yy_c_buf_p;" (assignment_expression "pcVar2 = yy_c_buf_p" identifier = identifier) ;) (expression_statement "iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size;" (assignment_expression "iVar9 = ~(uint)lVar11 + pyVar14->yy_buf_size" identifier = (binary_expression "~(uint)lVar11 + pyVar14->yy_buf_size" (unary_expression "~(uint)lVar11" ~ (cast_expression "(uint)lVar11" ( (type_descriptor "uint" type_identifier) ) identifier)) + (field_expression "pyVar14->yy_buf_size" identifier -> field_identifier))) ;) })) (if_statement "if (ppyVar3 == (YY_BUFFER_STATE *)0x0) {\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" if (parenthesized_expression "(ppyVar3 == (YY_BUFFER_STATE *)0x0)" ( (binary_expression "ppyVar3 == (YY_BUFFER_STATE *)0x0" identifier == (cast_expression "(YY_BUFFER_STATE *)0x0" ( (type_descriptor "YY_BUFFER_STATE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Does not return */\n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" { comment (expression_statement "pcVar1 = (code *)invalidInstructionException();" (assignment_expression "pcVar1 = (code *)invalidInstructionException()" identifier = (cast_expression "(code *)invalidInstructionException()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "invalidInstructionException()" identifier (argument_list "()" ( ))))) ;) (expression_statement "(*pcVar1)();" (call_expression "(*pcVar1)()" (parenthesized_expression "(*pcVar1)" ( (pointer_expression "*pcVar1" * identifier) )) (argument_list "()" ( ))) ;) })) (if_statement "if ((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)) goto LAB_0011085f;" if (parenthesized_expression "((pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0))" ( (binary_expression "(pyVar14->yy_input_file == (FILE *)0x0) || ((FILE *)yyin == (FILE *)0x0)" (parenthesized_expression "(pyVar14->yy_input_file == (FILE *)0x0)" ( (binary_expression "pyVar14->yy_input_file == (FILE *)0x0" (field_expression "pyVar14->yy_input_file" identifier -> field_identifier) == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((FILE *)yyin == (FILE *)0x0)" ( (binary_expression "(FILE *)yyin == (FILE *)0x0" (cast_expression "(FILE *)yyin" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_0011085f;" goto statement_identifier ;)) (expression_statement "iVar4 = 0x2000;" (assignment_expression "iVar4 = 0x2000" identifier = number_literal) ;) (if_statement "if (iVar9 < 0x2001) {\n      iVar4 = iVar9;\n    }" if (parenthesized_expression "(iVar9 < 0x2001)" ( (binary_expression "iVar9 < 0x2001" identifier < number_literal) )) (compound_statement "{\n      iVar4 = iVar9;\n    }" { (expression_statement "iVar4 = iVar9;" (assignment_expression "iVar4 = iVar9" identifier = identifier) ;) })) (expression_statement "sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin);" (assignment_expression "sVar7 = fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin)" identifier = (call_expression "fread(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin)" identifier (argument_list "(pyVar14->yy_ch_buf + lVar11,1,(long)iVar4,(FILE *)yyin)" ( (binary_expression "pyVar14->yy_ch_buf + lVar11" (field_expression "pyVar14->yy_ch_buf" identifier -> field_identifier) + identifier) , number_literal , (cast_expression "(long)iVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) , (cast_expression "(FILE *)yyin" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "iVar9 = (int)sVar7;" (assignment_expression "iVar9 = (int)sVar7" identifier = (cast_expression "(int)sVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (iVar4 <= iVar9) {\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }" if (parenthesized_expression "(iVar4 <= iVar9)" ( (binary_expression "iVar4 <= iVar9" identifier <= identifier) )) (compound_statement "{\n      iVar4 = 0;\n      ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n      pyVar14 = *ppyVar13;\n      yy_n_chars = iVar9;\n      pyVar14->yy_n_chars = iVar9;\n      goto LAB_001108a4;\n    }" { (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (expression_statement "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;" (assignment_expression "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top" identifier = (binary_expression "yy_buffer_stack + yy_buffer_stack_top" identifier + identifier)) ;) (expression_statement "pyVar14 = *ppyVar13;" (assignment_expression "pyVar14 = *ppyVar13" identifier = (pointer_expression "*ppyVar13" * identifier)) ;) (expression_statement "yy_n_chars = iVar9;" (assignment_expression "yy_n_chars = iVar9" identifier = identifier) ;) (expression_statement "pyVar14->yy_n_chars = iVar9;" (assignment_expression "pyVar14->yy_n_chars = iVar9" (field_expression "pyVar14->yy_n_chars" identifier -> field_identifier) = identifier) ;) (goto_statement "goto LAB_001108a4;" goto statement_identifier ;) })) (expression_statement "iVar4 = ferror((FILE *)yyin);" (assignment_expression "iVar4 = ferror((FILE *)yyin)" identifier = (call_expression "ferror((FILE *)yyin)" identifier (argument_list "((FILE *)yyin)" ( (cast_expression "(FILE *)yyin" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (iVar4 != 0) {\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      einfo(pcVar8);\n    }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"%F%P: read in flex scanner failed\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%F%P: read in flex scanner failed\n",5)" identifier (argument_list "(0,"%F%P: read in flex scanner failed\n",5)" ( number_literal , (string_literal ""%F%P: read in flex scanner failed\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "einfo(pcVar8);" (call_expression "einfo(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) })) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (expression_statement "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;" (assignment_expression "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top" identifier = (binary_expression "yy_buffer_stack + yy_buffer_stack_top" identifier + identifier)) ;) (expression_statement "pyVar14 = *ppyVar13;" (assignment_expression "pyVar14 = *ppyVar13" identifier = (pointer_expression "*ppyVar13" * identifier)) ;) (expression_statement "yy_n_chars = iVar9;" (assignment_expression "yy_n_chars = iVar9" identifier = identifier) ;) (expression_statement "pyVar14->yy_n_chars = iVar9;" (assignment_expression "pyVar14->yy_n_chars = iVar9" (field_expression "pyVar14->yy_n_chars" identifier -> field_identifier) = identifier) ;) (if_statement "if (iVar9 != 0) goto LAB_001108a4;" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (goto_statement "goto LAB_001108a4;" goto statement_identifier ;)) }))) (expression_statement "iVar9 = yy_n_chars;" (assignment_expression "iVar9 = yy_n_chars" identifier = identifier) ;) (if_statement "if (lVar11 == 0) {\n    iVar4 = 1;\n    yyrestart(yyin);\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    iVar9 = yy_n_chars;\n  }\n  else {\n    iVar4 = 2;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    pyVar14->yy_buffer_status = 2;\n  }" if (parenthesized_expression "(lVar11 == 0)" ( (binary_expression "lVar11 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar4 = 1;\n    yyrestart(yyin);\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    iVar9 = yy_n_chars;\n  }" { (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" identifier = number_literal) ;) (expression_statement "yyrestart(yyin);" (call_expression "yyrestart(yyin)" identifier (argument_list "(yyin)" ( identifier ))) ;) (expression_statement "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;" (assignment_expression "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top" identifier = (binary_expression "yy_buffer_stack + yy_buffer_stack_top" identifier + identifier)) ;) (expression_statement "pyVar14 = *ppyVar13;" (assignment_expression "pyVar14 = *ppyVar13" identifier = (pointer_expression "*ppyVar13" * identifier)) ;) (expression_statement "iVar9 = yy_n_chars;" (assignment_expression "iVar9 = yy_n_chars" identifier = identifier) ;) }) (else_clause "else {\n    iVar4 = 2;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    pyVar14->yy_buffer_status = 2;\n  }" else (compound_statement "{\n    iVar4 = 2;\n    ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;\n    pyVar14 = *ppyVar13;\n    pyVar14->yy_buffer_status = 2;\n  }" { (expression_statement "iVar4 = 2;" (assignment_expression "iVar4 = 2" identifier = number_literal) ;) (expression_statement "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top;" (assignment_expression "ppyVar13 = yy_buffer_stack + yy_buffer_stack_top" identifier = (binary_expression "yy_buffer_stack + yy_buffer_stack_top" identifier + identifier)) ;) (expression_statement "pyVar14 = *ppyVar13;" (assignment_expression "pyVar14 = *ppyVar13" identifier = (pointer_expression "*ppyVar13" * identifier)) ;) (expression_statement "pyVar14->yy_buffer_status = 2;" (assignment_expression "pyVar14->yy_buffer_status = 2" (field_expression "pyVar14->yy_buffer_status" identifier -> field_identifier) = number_literal) ;) }))) (labeled_statement "LAB_001108a4:\n  iVar10 = (uint)lVar11 + iVar9;" statement_identifier : (expression_statement "iVar10 = (uint)lVar11 + iVar9;" (assignment_expression "iVar10 = (uint)lVar11 + iVar9" identifier = (binary_expression "(uint)lVar11 + iVar9" (cast_expression "(uint)lVar11" ( (type_descriptor "uint" type_identifier) ) identifier) + identifier)) ;)) (expression_statement "pcVar8 = pyVar14->yy_ch_buf;" (assignment_expression "pcVar8 = pyVar14->yy_ch_buf" identifier = (field_expression "pyVar14->yy_ch_buf" identifier -> field_identifier)) ;) (if_statement "if (pyVar14->yy_buf_size < iVar10) {\n    pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10));\n    pyVar14->yy_ch_buf = pcVar8;\n    pcVar8 = (*ppyVar13)->yy_ch_buf;\n    if (pcVar8 == (char *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" if (parenthesized_expression "(pyVar14->yy_buf_size < iVar10)" ( (binary_expression "pyVar14->yy_buf_size < iVar10" (field_expression "pyVar14->yy_buf_size" identifier -> field_identifier) < identifier) )) (compound_statement "{\n    pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10));\n    pyVar14->yy_ch_buf = pcVar8;\n    pcVar8 = (*ppyVar13)->yy_ch_buf;\n    if (pcVar8 == (char *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" { (expression_statement "pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10));" (assignment_expression "pcVar8 = (char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10))" identifier = (cast_expression "(char *)realloc(pcVar8,(long)((iVar9 >> 1) + iVar10))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "realloc(pcVar8,(long)((iVar9 >> 1) + iVar10))" identifier (argument_list "(pcVar8,(long)((iVar9 >> 1) + iVar10))" ( identifier , (cast_expression "(long)((iVar9 >> 1) + iVar10)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((iVar9 >> 1) + iVar10)" ( (binary_expression "(iVar9 >> 1) + iVar10" (parenthesized_expression "(iVar9 >> 1)" ( (binary_expression "iVar9 >> 1" identifier >> number_literal) )) + identifier) ))) ))))) ;) (expression_statement "pyVar14->yy_ch_buf = pcVar8;" (assignment_expression "pyVar14->yy_ch_buf = pcVar8" (field_expression "pyVar14->yy_ch_buf" identifier -> field_identifier) = identifier) ;) (expression_statement "pcVar8 = (*ppyVar13)->yy_ch_buf;" (assignment_expression "pcVar8 = (*ppyVar13)->yy_ch_buf" identifier = (field_expression "(*ppyVar13)->yy_ch_buf" (parenthesized_expression "(*ppyVar13)" ( (pointer_expression "*ppyVar13" * identifier) )) -> field_identifier)) ;) (if_statement "if (pcVar8 == (char *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");\n    }" if (parenthesized_expression "(pcVar8 == (char *)0x0)" ( (binary_expression "pcVar8 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");\n    }" { comment (expression_statement "yy_fatal_error("out of dynamic memory in yy_get_next_buffer()");" (call_expression "yy_fatal_error("out of dynamic memory in yy_get_next_buffer()")" identifier (argument_list "("out of dynamic memory in yy_get_next_buffer()")" ( (string_literal ""out of dynamic memory in yy_get_next_buffer()"" " string_content ") ))) ;) })) })) (expression_statement "yy_n_chars = iVar10;" (assignment_expression "yy_n_chars = iVar10" identifier = identifier) ;) (expression_statement "pcVar8[iVar10] = '\0';" (assignment_expression "pcVar8[iVar10] = '\0'" (subscript_expression "pcVar8[iVar10]" identifier [ identifier ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "(*ppyVar13)->yy_ch_buf[(long)iVar10 + 1] = '\0';" (assignment_expression "(*ppyVar13)->yy_ch_buf[(long)iVar10 + 1] = '\0'" (subscript_expression "(*ppyVar13)->yy_ch_buf[(long)iVar10 + 1]" (field_expression "(*ppyVar13)->yy_ch_buf" (parenthesized_expression "(*ppyVar13)" ( (pointer_expression "*ppyVar13" * identifier) )) -> field_identifier) [ (binary_expression "(long)iVar10 + 1" (cast_expression "(long)iVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "yytext = (*ppyVar13)->yy_ch_buf;" (assignment_expression "yytext = (*ppyVar13)->yy_ch_buf" identifier = (field_expression "(*ppyVar13)->yy_ch_buf" (parenthesized_expression "(*ppyVar13)" ( (pointer_expression "*ppyVar13" * identifier) )) -> field_identifier)) ;) (return_statement "return iVar4;" return identifier ;) })))
(translation_unit "char FUN_00110700(void)\n\n{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}\n\n" (function_definition "char FUN_00110700(void)\n\n{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}" primitive_type (function_declarator "FUN_00110700(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}" { (declaration "code *pcVar1;" type_identifier (pointer_declarator "*pcVar1" * identifier) ;) (declaration "ulong uVar2;" type_identifier identifier ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar4;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "void *pvVar6;" primitive_type (pointer_declarator "*pvVar6" * identifier) ;) (declaration "size_t sVar7;" primitive_type identifier ;) (declaration "void *pvVar8;" primitive_type (pointer_declarator "*pvVar8" * identifier) ;) (declaration "undefined8 uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "char cVar11;" primitive_type identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "long lVar13;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar15;" (sized_type_specifier "long" long) (pointer_declarator "*plVar15" * identifier) ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long *plVar17;" (sized_type_specifier "long" long) (pointer_declarator "*plVar17" * identifier) ;) (expression_statement "lVar4 = DAT_002a66e0;" (assignment_expression "lVar4 = DAT_002a66e0" identifier = identifier) ;) (expression_statement "lVar3 = DAT_002a5838;" (assignment_expression "lVar3 = DAT_002a5838" identifier = identifier) ;) (expression_statement "uVar2 = DAT_002a5828;" (assignment_expression "uVar2 = DAT_002a5828" identifier = identifier) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" identifier = (cast_expression "(long *)*plVar15" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar15" * identifier))) ;) (expression_statement "lVar16 = plVar17[1];" (assignment_expression "lVar16 = plVar17[1]" identifier = (subscript_expression "plVar17[1]" identifier [ number_literal ])) ;) (if_statement "if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }" if (parenthesized_expression "((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828)" ( (binary_expression "(ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828" (call_expression "(ulong)(lVar16 + 1 + (long)DAT_002a5830)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(lVar16 + 1 + (long)DAT_002a5830)" ( (binary_expression "lVar16 + 1 + (long)DAT_002a5830" (binary_expression "lVar16 + 1" identifier + number_literal) + (cast_expression "(long)DAT_002a5830" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) < identifier) )) (compound_statement "{\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }" { (expression_statement "FUN_001102f0("fatal flex scanner internal error--end of buffer missed");" (call_expression "FUN_001102f0("fatal flex scanner internal error--end of buffer missed")" identifier (argument_list "("fatal flex scanner internal error--end of buffer missed")" ( (string_literal ""fatal flex scanner internal error--end of buffer missed"" " string_content ") ))) ;) })) (expression_statement "lVar14 = DAT_002a5828 - DAT_002a66e0;" (assignment_expression "lVar14 = DAT_002a5828 - DAT_002a66e0" identifier = (binary_expression "DAT_002a5828 - DAT_002a66e0" identifier - identifier)) ;) (if_statement "if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }" if (parenthesized_expression "(*(int *)((long)plVar17 + 0x34) == 0)" ( (binary_expression "*(int *)((long)plVar17 + 0x34) == 0" (pointer_expression "*(int *)((long)plVar17 + 0x34)" * (cast_expression "(int *)((long)plVar17 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar17 + 0x34)" ( (binary_expression "(long)plVar17 + 0x34" (cast_expression "(long)plVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n    return (lVar14 != 1) + '\x01';\n  }" { (return_statement "return (lVar14 != 1) + '\x01';" return (binary_expression "(lVar14 != 1) + '\x01'" (parenthesized_expression "(lVar14 != 1)" ( (binary_expression "lVar14 != 1" identifier != number_literal) )) + (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "lVar13 = lVar14 + -1;" (assignment_expression "lVar13 = lVar14 + -1" identifier = (binary_expression "lVar14 + -1" identifier + number_literal)) ;) (if_statement "if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }" if (parenthesized_expression "(lVar13 != 0)" ( (binary_expression "lVar13 != 0" identifier != number_literal) )) (compound_statement "{\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }" { (expression_statement "lVar5 = 0;" (assignment_expression "lVar5 = 0" identifier = number_literal) ;) (do_statement "do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);" do (compound_statement "{\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    }" { (expression_statement "*(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);" (assignment_expression "*(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5)" (pointer_expression "*(undefined1 *)(lVar16 + lVar5)" * (cast_expression "(undefined1 *)(lVar16 + lVar5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + lVar5)" ( (binary_expression "lVar16 + lVar5" identifier + identifier) )))) = (pointer_expression "*(undefined1 *)(lVar4 + lVar5)" * (cast_expression "(undefined1 *)(lVar4 + lVar5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar4 + lVar5)" ( (binary_expression "lVar4 + lVar5" identifier + identifier) ))))) ;) (expression_statement "lVar5 = lVar5 + 1;" (assignment_expression "lVar5 = lVar5 + 1" identifier = (binary_expression "lVar5 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar13 != lVar5)" ( (binary_expression "lVar13 != lVar5" identifier != identifier) )) ;) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" identifier = (cast_expression "(long *)*plVar15" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar15" * identifier))) ;) })) (if_statement "if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" if (parenthesized_expression "((int)plVar17[7] == 2)" ( (binary_expression "(int)plVar17[7] == 2" (cast_expression "(int)plVar17[7]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[7]" identifier [ number_literal ])) == number_literal) )) (compound_statement "{\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }" { (labeled_statement "LAB_0011085f:\n    DAT_002a5830 = 0;" statement_identifier : (expression_statement "DAT_002a5830 = 0;" (assignment_expression "DAT_002a5830 = 0" identifier = number_literal) ;)) (expression_statement "*(undefined4 *)((long)plVar17 + 0x1c) = 0;" (assignment_expression "*(undefined4 *)((long)plVar17 + 0x1c) = 0" (pointer_expression "*(undefined4 *)((long)plVar17 + 0x1c)" * (cast_expression "(undefined4 *)((long)plVar17 + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar17 + 0x1c)" ( (binary_expression "(long)plVar17 + 0x1c" (cast_expression "(long)plVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" else (compound_statement "{\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" { (expression_statement "iVar10 = (int)plVar17[3] - (int)lVar14;" (assignment_expression "iVar10 = (int)plVar17[3] - (int)lVar14" identifier = (binary_expression "(int)plVar17[3] - (int)lVar14" (cast_expression "(int)plVar17[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[3]" identifier [ number_literal ])) - (cast_expression "(int)lVar14" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (while_statement "while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }" while (parenthesized_expression "(iVar10 < 1)" ( (binary_expression "iVar10 < 1" identifier < number_literal) )) (compound_statement "{\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }" { (expression_statement "pvVar8 = (void *)plVar17[1];" (assignment_expression "pvVar8 = (void *)plVar17[1]" identifier = (cast_expression "(void *)plVar17[1]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar17[1]" identifier [ number_literal ]))) ;) (if_statement "if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }" if (parenthesized_expression "((int)plVar17[4] == 0)" ( (binary_expression "(int)plVar17[4] == 0" (cast_expression "(int)plVar17[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[4]" identifier [ number_literal ])) == number_literal) )) (compound_statement "{\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }" { (expression_statement "plVar17[1] = 0;" (assignment_expression "plVar17[1] = 0" (subscript_expression "plVar17[1]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "LAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");" statement_identifier : (expression_statement "FUN_001102f0("fatal error - scanner input buffer overflow");" (call_expression "FUN_001102f0("fatal error - scanner input buffer overflow")" identifier (argument_list "("fatal error - scanner input buffer overflow")" ( (string_literal ""fatal error - scanner input buffer overflow"" " string_content ") ))) ;)) })) (expression_statement "iVar10 = (int)plVar17[3];" (assignment_expression "iVar10 = (int)plVar17[3]" identifier = (cast_expression "(int)plVar17[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[3]" identifier [ number_literal ]))) ;) (if_statement "if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }" if (parenthesized_expression "(iVar10 < 1)" ( (binary_expression "iVar10 < 1" identifier < number_literal) )) (compound_statement "{\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }" { (expression_statement "iVar12 = iVar10 + 7;" (assignment_expression "iVar12 = iVar10 + 7" identifier = (binary_expression "iVar10 + 7" identifier + number_literal)) ;) (if_statement "if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\n          iVar12 = iVar10;\n        }" { (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" identifier = identifier) ;) })) (expression_statement "iVar10 = (iVar12 >> 3) + iVar10;" (assignment_expression "iVar10 = (iVar12 >> 3) + iVar10" identifier = (binary_expression "(iVar12 >> 3) + iVar10" (parenthesized_expression "(iVar12 >> 3)" ( (binary_expression "iVar12 >> 3" identifier >> number_literal) )) + identifier)) ;) }) (else_clause "else {\n        iVar10 = iVar10 * 2;\n      }" else (compound_statement "{\n        iVar10 = iVar10 * 2;\n      }" { (expression_statement "iVar10 = iVar10 * 2;" (assignment_expression "iVar10 = iVar10 * 2" identifier = (binary_expression "iVar10 * 2" identifier * number_literal)) ;) }))) (expression_statement "*(int *)(plVar17 + 3) = iVar10;" (assignment_expression "*(int *)(plVar17 + 3) = iVar10" (pointer_expression "*(int *)(plVar17 + 3)" * (cast_expression "(int *)(plVar17 + 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar17 + 3)" ( (binary_expression "plVar17 + 3" identifier + number_literal) )))) = identifier) ;) (expression_statement "pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));" (assignment_expression "pvVar6 = realloc(pvVar8,(long)(iVar10 + 2))" identifier = (call_expression "realloc(pvVar8,(long)(iVar10 + 2))" identifier (argument_list "(pvVar8,(long)(iVar10 + 2))" ( identifier , (cast_expression "(long)(iVar10 + 2)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "(iVar10 + 2)" ( (binary_expression "iVar10 + 2" identifier + number_literal) ))) )))) ;) (expression_statement "plVar17[1] = (long)pvVar6;" (assignment_expression "plVar17[1] = (long)pvVar6" (subscript_expression "plVar17[1]" identifier [ number_literal ]) = (cast_expression "(long)pvVar6" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (pvVar6 == (void *)0x0) goto LAB_00110804;" if (parenthesized_expression "(pvVar6 == (void *)0x0)" ( (binary_expression "pvVar6 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00110804;" goto statement_identifier ;)) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" identifier = (cast_expression "(long *)*plVar15" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar15" * identifier))) ;) (expression_statement "DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;" (assignment_expression "DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6" identifier = (binary_expression "(long)((int)uVar2 - (int)pvVar8) + (long)pvVar6" (cast_expression "(long)((int)uVar2 - (int)pvVar8)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((int)uVar2 - (int)pvVar8)" ( (binary_expression "(int)uVar2 - (int)pvVar8" (cast_expression "(int)uVar2" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pvVar8" ( (type_descriptor "int" primitive_type) ) identifier)) ))) + (cast_expression "(long)pvVar6" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier))) ;) (expression_statement "uVar2 = DAT_002a5828;" (assignment_expression "uVar2 = DAT_002a5828" identifier = identifier) ;) (expression_statement "iVar10 = ~(uint)lVar13 + (int)plVar17[3];" (assignment_expression "iVar10 = ~(uint)lVar13 + (int)plVar17[3]" identifier = (binary_expression "~(uint)lVar13 + (int)plVar17[3]" (unary_expression "~(uint)lVar13" ~ (cast_expression "(uint)lVar13" ( (type_descriptor "uint" type_identifier) ) identifier)) + (cast_expression "(int)plVar17[3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar17[3]" identifier [ number_literal ])))) ;) })) (if_statement "if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" { (expression_statement "pcVar1 = (code *)invalidInstructionException();" (assignment_expression "pcVar1 = (code *)invalidInstructionException()" identifier = (cast_expression "(code *)invalidInstructionException()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "invalidInstructionException()" identifier (argument_list "()" ( ))))) ;) (expression_statement "(*pcVar1)();" (call_expression "(*pcVar1)()" (parenthesized_expression "(*pcVar1)" ( (pointer_expression "*pcVar1" * identifier) )) (argument_list "()" ( ))) ;) })) (if_statement "if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;" if (parenthesized_expression "((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0))" ( (binary_expression "(*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)" (parenthesized_expression "(*plVar17 == 0)" ( (binary_expression "*plVar17 == 0" (pointer_expression "*plVar17" * identifier) == number_literal) )) || (parenthesized_expression "(DAT_002a5678 == (FILE *)0x0)" ( (binary_expression "DAT_002a5678 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_0011085f;" goto statement_identifier ;)) (expression_statement "iVar12 = 0x2000;" (assignment_expression "iVar12 = 0x2000" identifier = number_literal) ;) (if_statement "if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }" if (parenthesized_expression "(iVar10 < 0x2001)" ( (binary_expression "iVar10 < 0x2001" identifier < number_literal) )) (compound_statement "{\n      iVar12 = iVar10;\n    }" { (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" identifier = identifier) ;) })) (expression_statement "sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);" (assignment_expression "sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" identifier = (call_expression "fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" identifier (argument_list "((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" ( (cast_expression "(void *)(plVar17[1] + lVar13)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar17[1] + lVar13)" ( (binary_expression "plVar17[1] + lVar13" (subscript_expression "plVar17[1]" identifier [ number_literal ]) + identifier) ))) , number_literal , (cast_expression "(long)iVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) , identifier )))) ;) (expression_statement "iVar10 = (int)sVar7;" (assignment_expression "iVar10 = (int)sVar7" identifier = (cast_expression "(int)sVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }" if (parenthesized_expression "(iVar12 <= iVar10)" ( (binary_expression "iVar12 <= iVar10" identifier <= identifier) )) (compound_statement "{\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }" { (expression_statement "cVar11 = '\0';" (assignment_expression "cVar11 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "DAT_002a5830 = iVar10;" (assignment_expression "DAT_002a5830 = iVar10" identifier = identifier) ;) (expression_statement "*(int *)(lVar16 + 0x1c) = iVar10;" (assignment_expression "*(int *)(lVar16 + 0x1c) = iVar10" (pointer_expression "*(int *)(lVar16 + 0x1c)" * (cast_expression "(int *)(lVar16 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x1c)" ( (binary_expression "lVar16 + 0x1c" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_001108a4;" goto statement_identifier ;) })) (expression_statement "iVar12 = ferror(DAT_002a5678);" (assignment_expression "iVar12 = ferror(DAT_002a5678)" identifier = (call_expression "ferror(DAT_002a5678)" identifier (argument_list "(DAT_002a5678)" ( identifier )))) ;) (if_statement "if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }" { (expression_statement "uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);" (assignment_expression "uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5)" identifier = (call_expression "dcgettext(0,"%F%P: read in flex scanner failed\n",5)" identifier (argument_list "(0,"%F%P: read in flex scanner failed\n",5)" ( number_literal , (string_literal ""%F%P: read in flex scanner failed\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_001283c0(uVar9);" (call_expression "FUN_001283c0(uVar9)" identifier (argument_list "(uVar9)" ( identifier ))) ;) })) (expression_statement "cVar11 = '\0';" (assignment_expression "cVar11 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "DAT_002a5830 = iVar10;" (assignment_expression "DAT_002a5830 = iVar10" identifier = identifier) ;) (expression_statement "*(int *)(lVar16 + 0x1c) = iVar10;" (assignment_expression "*(int *)(lVar16 + 0x1c) = iVar10" (pointer_expression "*(int *)(lVar16 + 0x1c)" * (cast_expression "(int *)(lVar16 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x1c)" ( (binary_expression "lVar16 + 0x1c" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar10 != 0) goto LAB_001108a4;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_001108a4;" goto statement_identifier ;)) }))) (expression_statement "iVar10 = DAT_002a5830;" (assignment_expression "iVar10 = DAT_002a5830" identifier = identifier) ;) (if_statement "if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" if (parenthesized_expression "(lVar13 == 0)" ( (binary_expression "lVar13 == 0" identifier == number_literal) )) (compound_statement "{\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }" { (expression_statement "cVar11 = '\x01';" (assignment_expression "cVar11 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "FUN_00110650(DAT_002a5678);" (call_expression "FUN_00110650(DAT_002a5678)" identifier (argument_list "(DAT_002a5678)" ( identifier ))) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "iVar10 = DAT_002a5830;" (assignment_expression "iVar10 = DAT_002a5830" identifier = identifier) ;) }) (else_clause "else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" else (compound_statement "{\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" { (expression_statement "cVar11 = '\x02';" (assignment_expression "cVar11 = '\x02'" identifier = (char_literal "'\x02'" ' escape_sequence ')) ;) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" identifier = (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" ( (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" identifier + (binary_expression "DAT_002a5848 * 8" identifier * number_literal)) )))) ;) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" identifier = (pointer_expression "*plVar15" * identifier)) ;) (expression_statement "*(undefined4 *)(lVar16 + 0x38) = 2;" (assignment_expression "*(undefined4 *)(lVar16 + 0x38) = 2" (pointer_expression "*(undefined4 *)(lVar16 + 0x38)" * (cast_expression "(undefined4 *)(lVar16 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x38)" ( (binary_expression "lVar16 + 0x38" identifier + number_literal) )))) = number_literal) ;) }))) (labeled_statement "LAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;" statement_identifier : (expression_statement "iVar12 = (uint)lVar13 + iVar10;" (assignment_expression "iVar12 = (uint)lVar13 + iVar10" identifier = (binary_expression "(uint)lVar13 + iVar10" (cast_expression "(uint)lVar13" ( (type_descriptor "uint" type_identifier) ) identifier) + identifier)) ;)) (expression_statement "pvVar8 = *(void **)(lVar16 + 8);" (assignment_expression "pvVar8 = *(void **)(lVar16 + 8)" identifier = (pointer_expression "*(void **)(lVar16 + 8)" * (cast_expression "(void **)(lVar16 + 8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar16 + 8)" ( (binary_expression "lVar16 + 8" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" if (parenthesized_expression "(*(int *)(lVar16 + 0x18) < iVar12)" ( (binary_expression "*(int *)(lVar16 + 0x18) < iVar12" (pointer_expression "*(int *)(lVar16 + 0x18)" * (cast_expression "(int *)(lVar16 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x18)" ( (binary_expression "lVar16 + 0x18" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" { (expression_statement "pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));" (assignment_expression "pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12))" identifier = (call_expression "realloc(pvVar8,(long)((iVar10 >> 1) + iVar12))" identifier (argument_list "(pvVar8,(long)((iVar10 >> 1) + iVar12))" ( identifier , (cast_expression "(long)((iVar10 >> 1) + iVar12)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((iVar10 >> 1) + iVar12)" ( (binary_expression "(iVar10 >> 1) + iVar12" (parenthesized_expression "(iVar10 >> 1)" ( (binary_expression "iVar10 >> 1" identifier >> number_literal) )) + identifier) ))) )))) ;) (expression_statement "*(void **)(lVar16 + 8) = pvVar8;" (assignment_expression "*(void **)(lVar16 + 8) = pvVar8" (pointer_expression "*(void **)(lVar16 + 8)" * (cast_expression "(void **)(lVar16 + 8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar16 + 8)" ( (binary_expression "lVar16 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "pvVar8 = *(void **)(*plVar15 + 8);" (assignment_expression "pvVar8 = *(void **)(*plVar15 + 8)" identifier = (pointer_expression "*(void **)(*plVar15 + 8)" * (cast_expression "(void **)(*plVar15 + 8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar15 + 8)" ( (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" * identifier) + number_literal) ))))) ;) (if_statement "if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }" if (parenthesized_expression "(pvVar8 == (void *)0x0)" ( (binary_expression "pvVar8 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }" { (expression_statement "FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");" (call_expression "FUN_001102f0("out of dynamic memory in yy_get_next_buffer()")" identifier (argument_list "("out of dynamic memory in yy_get_next_buffer()")" ( (string_literal ""out of dynamic memory in yy_get_next_buffer()"" " string_content ") ))) ;) })) })) (expression_statement "DAT_002a5830 = iVar12;" (assignment_expression "DAT_002a5830 = iVar12" identifier = identifier) ;) (expression_statement "*(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;" (assignment_expression "*(undefined1 *)((long)pvVar8 + (long)iVar12) = 0" (pointer_expression "*(undefined1 *)((long)pvVar8 + (long)iVar12)" * (cast_expression "(undefined1 *)((long)pvVar8 + (long)iVar12)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)pvVar8 + (long)iVar12)" ( (binary_expression "(long)pvVar8 + (long)iVar12" (cast_expression "(long)pvVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (cast_expression "(long)iVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;" (assignment_expression "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0" (pointer_expression "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" * (cast_expression "(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" ( (binary_expression "*(long *)(*plVar15 + 8) + 1 + (long)iVar12" (binary_expression "*(long *)(*plVar15 + 8) + 1" (pointer_expression "*(long *)(*plVar15 + 8)" * (cast_expression "(long *)(*plVar15 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*plVar15 + 8)" ( (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" * identifier) + number_literal) )))) + number_literal) + (cast_expression "(long)iVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);" (assignment_expression "DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8)" identifier = (pointer_expression "*(undefined8 *)(*plVar15 + 8)" * (cast_expression "(undefined8 *)(*plVar15 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*plVar15 + 8)" ( (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" * identifier) + number_literal) ))))) ;) (return_statement "return cVar11;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT + LIT) + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == LIT) )) (compound_statement { (return_statement return (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) + (char_literal ' escape_sequence ')) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) + IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (unary_expression ~ (cast_expression ( (type_descriptor TYPE) ) IDENT)) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) ))) , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT)) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) + IDENT) ))) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) })) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) + LIT) + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) ;) (return_statement return IDENT ;) })))
(function_definition "char FUN_00110700(void)\n\n{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}" (primitive_type "char") (function_declarator "FUN_00110700(void)" (identifier "FUN_00110700") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  code *pcVar1;\n  ulong uVar2;\n  long lVar3;\n  long lVar4;\n  long lVar5;\n  void *pvVar6;\n  size_t sVar7;\n  void *pvVar8;\n  undefined8 uVar9;\n  int iVar10;\n  char cVar11;\n  int iVar12;\n  long lVar13;\n  long lVar14;\n  long *plVar15;\n  long lVar16;\n  long *plVar17;\n  \n  lVar4 = DAT_002a66e0;\n  lVar3 = DAT_002a5838;\n  uVar2 = DAT_002a5828;\n  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n  plVar17 = (long *)*plVar15;\n  lVar16 = plVar17[1];\n  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }\n  lVar14 = DAT_002a5828 - DAT_002a66e0;\n  if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }\n  lVar13 = lVar14 + -1;\n  if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }\n  if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }\n  iVar10 = DAT_002a5830;\n  if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }\nLAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;\n  pvVar8 = *(void **)(lVar16 + 8);\n  if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }\n  DAT_002a5830 = iVar12;\n  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;\n  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;\n  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);\n  return cVar11;\n}" ({ "{") (declaration "code *pcVar1;" (type_identifier "code") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "ulong uVar2;" (type_identifier "ulong") (identifier "uVar2") (; ";")) (declaration "long lVar3;" (sized_type_specifier "long" (long "long")) (identifier "lVar3") (; ";")) (declaration "long lVar4;" (sized_type_specifier "long" (long "long")) (identifier "lVar4") (; ";")) (declaration "long lVar5;" (sized_type_specifier "long" (long "long")) (identifier "lVar5") (; ";")) (declaration "void *pvVar6;" (primitive_type "void") (pointer_declarator "*pvVar6" (* "*") (identifier "pvVar6")) (; ";")) (declaration "size_t sVar7;" (primitive_type "size_t") (identifier "sVar7") (; ";")) (declaration "void *pvVar8;" (primitive_type "void") (pointer_declarator "*pvVar8" (* "*") (identifier "pvVar8")) (; ";")) (declaration "undefined8 uVar9;" (type_identifier "undefined8") (identifier "uVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "char cVar11;" (primitive_type "char") (identifier "cVar11") (; ";")) (declaration "int iVar12;" (primitive_type "int") (identifier "iVar12") (; ";")) (declaration "long lVar13;" (sized_type_specifier "long" (long "long")) (identifier "lVar13") (; ";")) (declaration "long lVar14;" (sized_type_specifier "long" (long "long")) (identifier "lVar14") (; ";")) (declaration "long *plVar15;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar15" (* "*") (identifier "plVar15")) (; ";")) (declaration "long lVar16;" (sized_type_specifier "long" (long "long")) (identifier "lVar16") (; ";")) (declaration "long *plVar17;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar17" (* "*") (identifier "plVar17")) (; ";")) (expression_statement "lVar4 = DAT_002a66e0;" (assignment_expression "lVar4 = DAT_002a66e0" (identifier "lVar4") (= "=") (identifier "DAT_002a66e0")) (; ";")) (expression_statement "lVar3 = DAT_002a5838;" (assignment_expression "lVar3 = DAT_002a5838" (identifier "lVar3") (= "=") (identifier "DAT_002a5838")) (; ";")) (expression_statement "uVar2 = DAT_002a5828;" (assignment_expression "uVar2 = DAT_002a5828" (identifier "uVar2") (= "=") (identifier "DAT_002a5828")) (; ";")) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" (identifier "plVar15") (= "=") (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" (identifier "DAT_002a5838") (+ "+") (binary_expression "DAT_002a5848 * 8" (identifier "DAT_002a5848") (* "*") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" (identifier "plVar17") (= "=") (cast_expression "(long *)*plVar15" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar15" (* "*") (identifier "plVar15")))) (; ";")) (expression_statement "lVar16 = plVar17[1];" (assignment_expression "lVar16 = plVar17[1]" (identifier "lVar16") (= "=") (subscript_expression "plVar17[1]" (identifier "plVar17") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }" (if "if") (parenthesized_expression "((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828)" (( "(") (binary_expression "(ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828" (call_expression "(ulong)(lVar16 + 1 + (long)DAT_002a5830)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(lVar16 + 1 + (long)DAT_002a5830)" (( "(") (binary_expression "lVar16 + 1 + (long)DAT_002a5830" (binary_expression "lVar16 + 1" (identifier "lVar16") (+ "+") (number_literal "1")) (+ "+") (cast_expression "(long)DAT_002a5830" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "DAT_002a5830"))) () ")"))) (< "<") (identifier "DAT_002a5828")) () ")")) (compound_statement "{\n                    \n    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");\n  }" ({ "{") (expression_statement "FUN_001102f0("fatal flex scanner internal error--end of buffer missed");" (call_expression "FUN_001102f0("fatal flex scanner internal error--end of buffer missed")" (identifier "FUN_001102f0") (argument_list "("fatal flex scanner internal error--end of buffer missed")" (( "(") (string_literal ""fatal flex scanner internal error--end of buffer missed"" (" """) (string_content "fatal flex scanner internal error--end of buffer missed") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "lVar14 = DAT_002a5828 - DAT_002a66e0;" (assignment_expression "lVar14 = DAT_002a5828 - DAT_002a66e0" (identifier "lVar14") (= "=") (binary_expression "DAT_002a5828 - DAT_002a66e0" (identifier "DAT_002a5828") (- "-") (identifier "DAT_002a66e0"))) (; ";")) (if_statement "if (*(int *)((long)plVar17 + 0x34) == 0) {\n    return (lVar14 != 1) + '\x01';\n  }" (if "if") (parenthesized_expression "(*(int *)((long)plVar17 + 0x34) == 0)" (( "(") (binary_expression "*(int *)((long)plVar17 + 0x34) == 0" (pointer_expression "*(int *)((long)plVar17 + 0x34)" (* "*") (cast_expression "(int *)((long)plVar17 + 0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)plVar17 + 0x34)" (( "(") (binary_expression "(long)plVar17 + 0x34" (cast_expression "(long)plVar17" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "plVar17")) (+ "+") (number_literal "0x34")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return (lVar14 != 1) + '\x01';\n  }" ({ "{") (return_statement "return (lVar14 != 1) + '\x01';" (return "return") (binary_expression "(lVar14 != 1) + '\x01'" (parenthesized_expression "(lVar14 != 1)" (( "(") (binary_expression "lVar14 != 1" (identifier "lVar14") (!= "!=") (number_literal "1")) () ")")) (+ "+") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}"))) (expression_statement "lVar13 = lVar14 + -1;" (assignment_expression "lVar13 = lVar14 + -1" (identifier "lVar13") (= "=") (binary_expression "lVar14 + -1" (identifier "lVar14") (+ "+") (number_literal "-1"))) (; ";")) (if_statement "if (lVar13 != 0) {\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }" (if "if") (parenthesized_expression "(lVar13 != 0)" (( "(") (binary_expression "lVar13 != 0" (identifier "lVar13") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    lVar5 = 0;\n    do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);\n    plVar17 = (long *)*plVar15;\n  }" ({ "{") (expression_statement "lVar5 = 0;" (assignment_expression "lVar5 = 0" (identifier "lVar5") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    } while (lVar13 != lVar5);" (do "do") (compound_statement "{\n      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);\n      lVar5 = lVar5 + 1;\n    }" ({ "{") (expression_statement "*(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);" (assignment_expression "*(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5)" (pointer_expression "*(undefined1 *)(lVar16 + lVar5)" (* "*") (cast_expression "(undefined1 *)(lVar16 + lVar5)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + lVar5)" (( "(") (binary_expression "lVar16 + lVar5" (identifier "lVar16") (+ "+") (identifier "lVar5")) () ")")))) (= "=") (pointer_expression "*(undefined1 *)(lVar4 + lVar5)" (* "*") (cast_expression "(undefined1 *)(lVar4 + lVar5)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar4 + lVar5)" (( "(") (binary_expression "lVar4 + lVar5" (identifier "lVar4") (+ "+") (identifier "lVar5")) () ")"))))) (; ";")) (expression_statement "lVar5 = lVar5 + 1;" (assignment_expression "lVar5 = lVar5 + 1" (identifier "lVar5") (= "=") (binary_expression "lVar5 + 1" (identifier "lVar5") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar13 != lVar5)" (( "(") (binary_expression "lVar13 != lVar5" (identifier "lVar13") (!= "!=") (identifier "lVar5")) () ")")) (; ";")) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" (identifier "plVar17") (= "=") (cast_expression "(long *)*plVar15" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar15" (* "*") (identifier "plVar15")))) (; ";")) (} "}"))) (if_statement "if ((int)plVar17[7] == 2) {\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }\n  else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" (if "if") (parenthesized_expression "((int)plVar17[7] == 2)" (( "(") (binary_expression "(int)plVar17[7] == 2" (cast_expression "(int)plVar17[7]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar17[7]" (identifier "plVar17") ([ "[") (number_literal "7") (] "]"))) (== "==") (number_literal "2")) () ")")) (compound_statement "{\nLAB_0011085f:\n    DAT_002a5830 = 0;\n    *(undefined4 *)((long)plVar17 + 0x1c) = 0;\n  }" ({ "{") (labeled_statement "LAB_0011085f:\n    DAT_002a5830 = 0;" (statement_identifier "LAB_0011085f") (: ":") (expression_statement "DAT_002a5830 = 0;" (assignment_expression "DAT_002a5830 = 0" (identifier "DAT_002a5830") (= "=") (number_literal "0")) (; ";"))) (expression_statement "*(undefined4 *)((long)plVar17 + 0x1c) = 0;" (assignment_expression "*(undefined4 *)((long)plVar17 + 0x1c) = 0" (pointer_expression "*(undefined4 *)((long)plVar17 + 0x1c)" (* "*") (cast_expression "(undefined4 *)((long)plVar17 + 0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)plVar17 + 0x1c)" (( "(") (binary_expression "(long)plVar17 + 0x1c" (cast_expression "(long)plVar17" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "plVar17")) (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" (else "else") (compound_statement "{\n    iVar10 = (int)plVar17[3] - (int)lVar14;\n    while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }\n    if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }\n    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;\n    iVar12 = 0x2000;\n    if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }\n    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);\n    iVar10 = (int)sVar7;\n    if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }\n    iVar12 = ferror(DAT_002a5678);\n    if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }\n    cVar11 = '\0';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    DAT_002a5830 = iVar10;\n    *(int *)(lVar16 + 0x1c) = iVar10;\n    if (iVar10 != 0) goto LAB_001108a4;\n  }" ({ "{") (expression_statement "iVar10 = (int)plVar17[3] - (int)lVar14;" (assignment_expression "iVar10 = (int)plVar17[3] - (int)lVar14" (identifier "iVar10") (= "=") (binary_expression "(int)plVar17[3] - (int)lVar14" (cast_expression "(int)plVar17[3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar17[3]" (identifier "plVar17") ([ "[") (number_literal "3") (] "]"))) (- "-") (cast_expression "(int)lVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar14")))) (; ";")) (while_statement "while (iVar10 < 1) {\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }" (while "while") (parenthesized_expression "(iVar10 < 1)" (( "(") (binary_expression "iVar10 < 1" (identifier "iVar10") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n      pvVar8 = (void *)plVar17[1];\n      if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }\n      iVar10 = (int)plVar17[3];\n      if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }\n      *(int *)(plVar17 + 3) = iVar10;\n      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));\n      plVar17[1] = (long)pvVar6;\n      if (pvVar6 == (void *)0x0) goto LAB_00110804;\n      plVar17 = (long *)*plVar15;\n      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;\n      uVar2 = DAT_002a5828;\n      iVar10 = ~(uint)lVar13 + (int)plVar17[3];\n    }" ({ "{") (expression_statement "pvVar8 = (void *)plVar17[1];" (assignment_expression "pvVar8 = (void *)plVar17[1]" (identifier "pvVar8") (= "=") (cast_expression "(void *)plVar17[1]" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar17[1]" (identifier "plVar17") ([ "[") (number_literal "1") (] "]")))) (; ";")) (if_statement "if ((int)plVar17[4] == 0) {\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }" (if "if") (parenthesized_expression "((int)plVar17[4] == 0)" (( "(") (binary_expression "(int)plVar17[4] == 0" (cast_expression "(int)plVar17[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar17[4]" (identifier "plVar17") ([ "[") (number_literal "4") (] "]"))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        plVar17[1] = 0;\nLAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");\n      }" ({ "{") (expression_statement "plVar17[1] = 0;" (assignment_expression "plVar17[1] = 0" (subscript_expression "plVar17[1]" (identifier "plVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_00110804:\n                    \n        FUN_001102f0("fatal error - scanner input buffer overflow");" (statement_identifier "LAB_00110804") (: ":") (expression_statement "FUN_001102f0("fatal error - scanner input buffer overflow");" (call_expression "FUN_001102f0("fatal error - scanner input buffer overflow")" (identifier "FUN_001102f0") (argument_list "("fatal error - scanner input buffer overflow")" (( "(") (string_literal ""fatal error - scanner input buffer overflow"" (" """) (string_content "fatal error - scanner input buffer overflow") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "iVar10 = (int)plVar17[3];" (assignment_expression "iVar10 = (int)plVar17[3]" (identifier "iVar10") (= "=") (cast_expression "(int)plVar17[3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar17[3]" (identifier "plVar17") ([ "[") (number_literal "3") (] "]")))) (; ";")) (if_statement "if (iVar10 < 1) {\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }\n      else {\n        iVar10 = iVar10 * 2;\n      }" (if "if") (parenthesized_expression "(iVar10 < 1)" (( "(") (binary_expression "iVar10 < 1" (identifier "iVar10") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n        iVar12 = iVar10 + 7;\n        if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }\n        iVar10 = (iVar12 >> 3) + iVar10;\n      }" ({ "{") (expression_statement "iVar12 = iVar10 + 7;" (assignment_expression "iVar12 = iVar10 + 7" (identifier "iVar12") (= "=") (binary_expression "iVar10 + 7" (identifier "iVar10") (+ "+") (number_literal "7"))) (; ";")) (if_statement "if (-1 < iVar10) {\n          iVar12 = iVar10;\n        }" (if "if") (parenthesized_expression "(-1 < iVar10)" (( "(") (binary_expression "-1 < iVar10" (number_literal "-1") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\n          iVar12 = iVar10;\n        }" ({ "{") (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" (identifier "iVar12") (= "=") (identifier "iVar10")) (; ";")) (} "}"))) (expression_statement "iVar10 = (iVar12 >> 3) + iVar10;" (assignment_expression "iVar10 = (iVar12 >> 3) + iVar10" (identifier "iVar10") (= "=") (binary_expression "(iVar12 >> 3) + iVar10" (parenthesized_expression "(iVar12 >> 3)" (( "(") (binary_expression "iVar12 >> 3" (identifier "iVar12") (>> ">>") (number_literal "3")) () ")")) (+ "+") (identifier "iVar10"))) (; ";")) (} "}")) (else_clause "else {\n        iVar10 = iVar10 * 2;\n      }" (else "else") (compound_statement "{\n        iVar10 = iVar10 * 2;\n      }" ({ "{") (expression_statement "iVar10 = iVar10 * 2;" (assignment_expression "iVar10 = iVar10 * 2" (identifier "iVar10") (= "=") (binary_expression "iVar10 * 2" (identifier "iVar10") (* "*") (number_literal "2"))) (; ";")) (} "}")))) (expression_statement "*(int *)(plVar17 + 3) = iVar10;" (assignment_expression "*(int *)(plVar17 + 3) = iVar10" (pointer_expression "*(int *)(plVar17 + 3)" (* "*") (cast_expression "(int *)(plVar17 + 3)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar17 + 3)" (( "(") (binary_expression "plVar17 + 3" (identifier "plVar17") (+ "+") (number_literal "3")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));" (assignment_expression "pvVar6 = realloc(pvVar8,(long)(iVar10 + 2))" (identifier "pvVar6") (= "=") (call_expression "realloc(pvVar8,(long)(iVar10 + 2))" (identifier "realloc") (argument_list "(pvVar8,(long)(iVar10 + 2))" (( "(") (identifier "pvVar8") (, ",") (cast_expression "(long)(iVar10 + 2)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "(iVar10 + 2)" (( "(") (binary_expression "iVar10 + 2" (identifier "iVar10") (+ "+") (number_literal "2")) () ")"))) () ")")))) (; ";")) (expression_statement "plVar17[1] = (long)pvVar6;" (assignment_expression "plVar17[1] = (long)pvVar6" (subscript_expression "plVar17[1]" (identifier "plVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(long)pvVar6" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pvVar6"))) (; ";")) (if_statement "if (pvVar6 == (void *)0x0) goto LAB_00110804;" (if "if") (parenthesized_expression "(pvVar6 == (void *)0x0)" (( "(") (binary_expression "pvVar6 == (void *)0x0" (identifier "pvVar6") (== "==") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00110804;" (goto "goto") (statement_identifier "LAB_00110804") (; ";"))) (expression_statement "plVar17 = (long *)*plVar15;" (assignment_expression "plVar17 = (long *)*plVar15" (identifier "plVar17") (= "=") (cast_expression "(long *)*plVar15" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar15" (* "*") (identifier "plVar15")))) (; ";")) (expression_statement "DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;" (assignment_expression "DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6" (identifier "DAT_002a5828") (= "=") (binary_expression "(long)((int)uVar2 - (int)pvVar8) + (long)pvVar6" (cast_expression "(long)((int)uVar2 - (int)pvVar8)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "((int)uVar2 - (int)pvVar8)" (( "(") (binary_expression "(int)uVar2 - (int)pvVar8" (cast_expression "(int)uVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar2")) (- "-") (cast_expression "(int)pvVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pvVar8"))) () ")"))) (+ "+") (cast_expression "(long)pvVar6" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pvVar6")))) (; ";")) (expression_statement "uVar2 = DAT_002a5828;" (assignment_expression "uVar2 = DAT_002a5828" (identifier "uVar2") (= "=") (identifier "DAT_002a5828")) (; ";")) (expression_statement "iVar10 = ~(uint)lVar13 + (int)plVar17[3];" (assignment_expression "iVar10 = ~(uint)lVar13 + (int)plVar17[3]" (identifier "iVar10") (= "=") (binary_expression "~(uint)lVar13 + (int)plVar17[3]" (unary_expression "~(uint)lVar13" (~ "~") (cast_expression "(uint)lVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar13"))) (+ "+") (cast_expression "(int)plVar17[3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar17[3]" (identifier "plVar17") ([ "[") (number_literal "3") (] "]"))))) (; ";")) (} "}"))) (if_statement "if (lVar3 == 0) {\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" (if "if") (parenthesized_expression "(lVar3 == 0)" (( "(") (binary_expression "lVar3 == 0" (identifier "lVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n      pcVar1 = (code *)invalidInstructionException();\n      (*pcVar1)();\n    }" ({ "{") (expression_statement "pcVar1 = (code *)invalidInstructionException();" (assignment_expression "pcVar1 = (code *)invalidInstructionException()" (identifier "pcVar1") (= "=") (cast_expression "(code *)invalidInstructionException()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "invalidInstructionException()" (identifier "invalidInstructionException") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "(*pcVar1)();" (call_expression "(*pcVar1)()" (parenthesized_expression "(*pcVar1)" (( "(") (pointer_expression "*pcVar1" (* "*") (identifier "pcVar1")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;" (if "if") (parenthesized_expression "((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0))" (( "(") (binary_expression "(*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)" (parenthesized_expression "(*plVar17 == 0)" (( "(") (binary_expression "*plVar17 == 0" (pointer_expression "*plVar17" (* "*") (identifier "plVar17")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(DAT_002a5678 == (FILE *)0x0)" (( "(") (binary_expression "DAT_002a5678 == (FILE *)0x0" (identifier "DAT_002a5678") (== "==") (cast_expression "(FILE *)0x0" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (goto_statement "goto LAB_0011085f;" (goto "goto") (statement_identifier "LAB_0011085f") (; ";"))) (expression_statement "iVar12 = 0x2000;" (assignment_expression "iVar12 = 0x2000" (identifier "iVar12") (= "=") (number_literal "0x2000")) (; ";")) (if_statement "if (iVar10 < 0x2001) {\n      iVar12 = iVar10;\n    }" (if "if") (parenthesized_expression "(iVar10 < 0x2001)" (( "(") (binary_expression "iVar10 < 0x2001" (identifier "iVar10") (< "<") (number_literal "0x2001")) () ")")) (compound_statement "{\n      iVar12 = iVar10;\n    }" ({ "{") (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" (identifier "iVar12") (= "=") (identifier "iVar10")) (; ";")) (} "}"))) (expression_statement "sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);" (assignment_expression "sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" (identifier "sVar7") (= "=") (call_expression "fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" (identifier "fread") (argument_list "((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678)" (( "(") (cast_expression "(void *)(plVar17[1] + lVar13)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar17[1] + lVar13)" (( "(") (binary_expression "plVar17[1] + lVar13" (subscript_expression "plVar17[1]" (identifier "plVar17") ([ "[") (number_literal "1") (] "]")) (+ "+") (identifier "lVar13")) () ")"))) (, ",") (number_literal "1") (, ",") (cast_expression "(long)iVar12" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "iVar12")) (, ",") (identifier "DAT_002a5678") () ")")))) (; ";")) (expression_statement "iVar10 = (int)sVar7;" (assignment_expression "iVar10 = (int)sVar7" (identifier "iVar10") (= "=") (cast_expression "(int)sVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar7"))) (; ";")) (if_statement "if (iVar12 <= iVar10) {\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }" (if "if") (parenthesized_expression "(iVar12 <= iVar10)" (( "(") (binary_expression "iVar12 <= iVar10" (identifier "iVar12") (<= "<=") (identifier "iVar10")) () ")")) (compound_statement "{\n      cVar11 = '\0';\n      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n      lVar16 = *plVar15;\n      DAT_002a5830 = iVar10;\n      *(int *)(lVar16 + 0x1c) = iVar10;\n      goto LAB_001108a4;\n    }" ({ "{") (expression_statement "cVar11 = '\0';" (assignment_expression "cVar11 = '\0'" (identifier "cVar11") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" (identifier "plVar15") (= "=") (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" (identifier "DAT_002a5838") (+ "+") (binary_expression "DAT_002a5848 * 8" (identifier "DAT_002a5848") (* "*") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" (identifier "lVar16") (= "=") (pointer_expression "*plVar15" (* "*") (identifier "plVar15"))) (; ";")) (expression_statement "DAT_002a5830 = iVar10;" (assignment_expression "DAT_002a5830 = iVar10" (identifier "DAT_002a5830") (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(lVar16 + 0x1c) = iVar10;" (assignment_expression "*(int *)(lVar16 + 0x1c) = iVar10" (pointer_expression "*(int *)(lVar16 + 0x1c)" (* "*") (cast_expression "(int *)(lVar16 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + 0x1c)" (( "(") (binary_expression "lVar16 + 0x1c" (identifier "lVar16") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (goto_statement "goto LAB_001108a4;" (goto "goto") (statement_identifier "LAB_001108a4") (; ";")) (} "}"))) (expression_statement "iVar12 = ferror(DAT_002a5678);" (assignment_expression "iVar12 = ferror(DAT_002a5678)" (identifier "iVar12") (= "=") (call_expression "ferror(DAT_002a5678)" (identifier "ferror") (argument_list "(DAT_002a5678)" (( "(") (identifier "DAT_002a5678") () ")")))) (; ";")) (if_statement "if (iVar12 != 0) {\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);\n      FUN_001283c0(uVar9);\n    }" ({ "{") (expression_statement "uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);" (assignment_expression "uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5)" (identifier "uVar9") (= "=") (call_expression "dcgettext(0,"%F%P: read in flex scanner failed\n",5)" (identifier "dcgettext") (argument_list "(0,"%F%P: read in flex scanner failed\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%F%P: read in flex scanner failed\n"" (" """) (string_content "%F%P: read in flex scanner failed") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_001283c0(uVar9);" (call_expression "FUN_001283c0(uVar9)" (identifier "FUN_001283c0") (argument_list "(uVar9)" (( "(") (identifier "uVar9") () ")"))) (; ";")) (} "}"))) (expression_statement "cVar11 = '\0';" (assignment_expression "cVar11 = '\0'" (identifier "cVar11") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" (identifier "plVar15") (= "=") (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" (identifier "DAT_002a5838") (+ "+") (binary_expression "DAT_002a5848 * 8" (identifier "DAT_002a5848") (* "*") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" (identifier "lVar16") (= "=") (pointer_expression "*plVar15" (* "*") (identifier "plVar15"))) (; ";")) (expression_statement "DAT_002a5830 = iVar10;" (assignment_expression "DAT_002a5830 = iVar10" (identifier "DAT_002a5830") (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(lVar16 + 0x1c) = iVar10;" (assignment_expression "*(int *)(lVar16 + 0x1c) = iVar10" (pointer_expression "*(int *)(lVar16 + 0x1c)" (* "*") (cast_expression "(int *)(lVar16 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + 0x1c)" (( "(") (binary_expression "lVar16 + 0x1c" (identifier "lVar16") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (if_statement "if (iVar10 != 0) goto LAB_001108a4;" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_001108a4;" (goto "goto") (statement_identifier "LAB_001108a4") (; ";"))) (} "}")))) (expression_statement "iVar10 = DAT_002a5830;" (assignment_expression "iVar10 = DAT_002a5830" (identifier "iVar10") (= "=") (identifier "DAT_002a5830")) (; ";")) (if_statement "if (lVar13 == 0) {\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }\n  else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" (if "if") (parenthesized_expression "(lVar13 == 0)" (( "(") (binary_expression "lVar13 == 0" (identifier "lVar13") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    cVar11 = '\x01';\n    FUN_00110650(DAT_002a5678);\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    iVar10 = DAT_002a5830;\n  }" ({ "{") (expression_statement "cVar11 = '\x01';" (assignment_expression "cVar11 = '\x01'" (identifier "cVar11") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "FUN_00110650(DAT_002a5678);" (call_expression "FUN_00110650(DAT_002a5678)" (identifier "FUN_00110650") (argument_list "(DAT_002a5678)" (( "(") (identifier "DAT_002a5678") () ")"))) (; ";")) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" (identifier "plVar15") (= "=") (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" (identifier "DAT_002a5838") (+ "+") (binary_expression "DAT_002a5848 * 8" (identifier "DAT_002a5848") (* "*") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" (identifier "lVar16") (= "=") (pointer_expression "*plVar15" (* "*") (identifier "plVar15"))) (; ";")) (expression_statement "iVar10 = DAT_002a5830;" (assignment_expression "iVar10 = DAT_002a5830" (identifier "iVar10") (= "=") (identifier "DAT_002a5830")) (; ";")) (} "}")) (else_clause "else {\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" (else "else") (compound_statement "{\n    cVar11 = '\x02';\n    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);\n    lVar16 = *plVar15;\n    *(undefined4 *)(lVar16 + 0x38) = 2;\n  }" ({ "{") (expression_statement "cVar11 = '\x02';" (assignment_expression "cVar11 = '\x02'" (identifier "cVar11") (= "=") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) (; ";")) (expression_statement "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);" (assignment_expression "plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8)" (identifier "plVar15") (= "=") (cast_expression "(long *)(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_002a5838 + DAT_002a5848 * 8)" (( "(") (binary_expression "DAT_002a5838 + DAT_002a5848 * 8" (identifier "DAT_002a5838") (+ "+") (binary_expression "DAT_002a5848 * 8" (identifier "DAT_002a5848") (* "*") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "lVar16 = *plVar15;" (assignment_expression "lVar16 = *plVar15" (identifier "lVar16") (= "=") (pointer_expression "*plVar15" (* "*") (identifier "plVar15"))) (; ";")) (expression_statement "*(undefined4 *)(lVar16 + 0x38) = 2;" (assignment_expression "*(undefined4 *)(lVar16 + 0x38) = 2" (pointer_expression "*(undefined4 *)(lVar16 + 0x38)" (* "*") (cast_expression "(undefined4 *)(lVar16 + 0x38)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + 0x38)" (( "(") (binary_expression "lVar16 + 0x38" (identifier "lVar16") (+ "+") (number_literal "0x38")) () ")")))) (= "=") (number_literal "2")) (; ";")) (} "}")))) (labeled_statement "LAB_001108a4:\n  iVar12 = (uint)lVar13 + iVar10;" (statement_identifier "LAB_001108a4") (: ":") (expression_statement "iVar12 = (uint)lVar13 + iVar10;" (assignment_expression "iVar12 = (uint)lVar13 + iVar10" (identifier "iVar12") (= "=") (binary_expression "(uint)lVar13 + iVar10" (cast_expression "(uint)lVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar13")) (+ "+") (identifier "iVar10"))) (; ";"))) (expression_statement "pvVar8 = *(void **)(lVar16 + 8);" (assignment_expression "pvVar8 = *(void **)(lVar16 + 8)" (identifier "pvVar8") (= "=") (pointer_expression "*(void **)(lVar16 + 8)" (* "*") (cast_expression "(void **)(lVar16 + 8)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar16 + 8)" (( "(") (binary_expression "lVar16 + 8" (identifier "lVar16") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (*(int *)(lVar16 + 0x18) < iVar12) {\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" (if "if") (parenthesized_expression "(*(int *)(lVar16 + 0x18) < iVar12)" (( "(") (binary_expression "*(int *)(lVar16 + 0x18) < iVar12" (pointer_expression "*(int *)(lVar16 + 0x18)" (* "*") (cast_expression "(int *)(lVar16 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + 0x18)" (( "(") (binary_expression "lVar16 + 0x18" (identifier "lVar16") (+ "+") (number_literal "0x18")) () ")")))) (< "<") (identifier "iVar12")) () ")")) (compound_statement "{\n    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));\n    *(void **)(lVar16 + 8) = pvVar8;\n    pvVar8 = *(void **)(*plVar15 + 8);\n    if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }\n  }" ({ "{") (expression_statement "pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));" (assignment_expression "pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12))" (identifier "pvVar8") (= "=") (call_expression "realloc(pvVar8,(long)((iVar10 >> 1) + iVar12))" (identifier "realloc") (argument_list "(pvVar8,(long)((iVar10 >> 1) + iVar12))" (( "(") (identifier "pvVar8") (, ",") (cast_expression "(long)((iVar10 >> 1) + iVar12)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "((iVar10 >> 1) + iVar12)" (( "(") (binary_expression "(iVar10 >> 1) + iVar12" (parenthesized_expression "(iVar10 >> 1)" (( "(") (binary_expression "iVar10 >> 1" (identifier "iVar10") (>> ">>") (number_literal "1")) () ")")) (+ "+") (identifier "iVar12")) () ")"))) () ")")))) (; ";")) (expression_statement "*(void **)(lVar16 + 8) = pvVar8;" (assignment_expression "*(void **)(lVar16 + 8) = pvVar8" (pointer_expression "*(void **)(lVar16 + 8)" (* "*") (cast_expression "(void **)(lVar16 + 8)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar16 + 8)" (( "(") (binary_expression "lVar16 + 8" (identifier "lVar16") (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "pvVar8")) (; ";")) (expression_statement "pvVar8 = *(void **)(*plVar15 + 8);" (assignment_expression "pvVar8 = *(void **)(*plVar15 + 8)" (identifier "pvVar8") (= "=") (pointer_expression "*(void **)(*plVar15 + 8)" (* "*") (cast_expression "(void **)(*plVar15 + 8)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*plVar15 + 8)" (( "(") (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" (* "*") (identifier "plVar15")) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (pvVar8 == (void *)0x0) {\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }" (if "if") (parenthesized_expression "(pvVar8 == (void *)0x0)" (( "(") (binary_expression "pvVar8 == (void *)0x0" (identifier "pvVar8") (== "==") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");\n    }" ({ "{") (expression_statement "FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");" (call_expression "FUN_001102f0("out of dynamic memory in yy_get_next_buffer()")" (identifier "FUN_001102f0") (argument_list "("out of dynamic memory in yy_get_next_buffer()")" (( "(") (string_literal ""out of dynamic memory in yy_get_next_buffer()"" (" """) (string_content "out of dynamic memory in yy_get_next_buffer()") (" """)) () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "DAT_002a5830 = iVar12;" (assignment_expression "DAT_002a5830 = iVar12" (identifier "DAT_002a5830") (= "=") (identifier "iVar12")) (; ";")) (expression_statement "*(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;" (assignment_expression "*(undefined1 *)((long)pvVar8 + (long)iVar12) = 0" (pointer_expression "*(undefined1 *)((long)pvVar8 + (long)iVar12)" (* "*") (cast_expression "(undefined1 *)((long)pvVar8 + (long)iVar12)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)pvVar8 + (long)iVar12)" (( "(") (binary_expression "(long)pvVar8 + (long)iVar12" (cast_expression "(long)pvVar8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pvVar8")) (+ "+") (cast_expression "(long)iVar12" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "iVar12"))) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;" (assignment_expression "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0" (pointer_expression "*(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" (* "*") (cast_expression "(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(*plVar15 + 8) + 1 + (long)iVar12)" (( "(") (binary_expression "*(long *)(*plVar15 + 8) + 1 + (long)iVar12" (binary_expression "*(long *)(*plVar15 + 8) + 1" (pointer_expression "*(long *)(*plVar15 + 8)" (* "*") (cast_expression "(long *)(*plVar15 + 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*plVar15 + 8)" (( "(") (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" (* "*") (identifier "plVar15")) (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "1")) (+ "+") (cast_expression "(long)iVar12" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "iVar12"))) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);" (assignment_expression "DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8)" (identifier "DAT_002a66e0") (= "=") (pointer_expression "*(undefined8 *)(*plVar15 + 8)" (* "*") (cast_expression "(undefined8 *)(*plVar15 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*plVar15 + 8)" (( "(") (binary_expression "*plVar15 + 8" (pointer_expression "*plVar15" (* "*") (identifier "plVar15")) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (return_statement "return cVar11;" (return "return") (identifier "cVar11") (; ";")) (} "}")))

/* WARNING: Unknown calling convention */

int function_1(void)

{
  type_1 *pcVar1;
  char *pcVar2;
  type_2 *var_13;
  int var_10;
  long var_8;
  char *var_12;
  size_t sVar7;
  char *var_3;
  int var_9;
  int var_20;
  long var_7;
  long var_6;
  type_2 *ppyVar13;
  type_2 pyVar14;
  
  var_12 = yytext;
  var_13 = var_1;
  pcVar2 = var_4;
  ppyVar13 = var_1 + var_2;
  pyVar14 = *ppyVar13;
  var_3 = pyVar14->yy_ch_buf;
  if (var_3 + (long)yy_n_chars + 1 < var_4) {
                    /* WARNING: Subroutine does not return */
    var_5("fatal flex scanner internal error--end of buffer missed");
  }
  var_6 = (long)var_4 - (long)yytext;
  if (pyVar14->yy_fill_buffer == 0) {
    return (var_6 != 1) + 1;
  }
  var_7 = var_6 + -1;
  if (var_7 != 0) {
    var_8 = 0;
    do {
      var_3[var_8] = var_12[var_8];
      var_8 = var_8 + 1;
    } while (var_7 != var_8);
    pyVar14 = *ppyVar13;
  }
  if (pyVar14->yy_buffer_status == 2) {
LAB_0011085f:
    yy_n_chars = 0;
    pyVar14->yy_n_chars = 0;
  }
  else {
    var_9 = pyVar14->yy_buf_size - (int)var_6;
    while (var_9 < 1) {
      var_3 = pyVar14->yy_ch_buf;
      if (pyVar14->yy_is_our_buffer == 0) {
        pyVar14->yy_ch_buf = (char *)0x0;
LAB_00110804:
                    /* WARNING: Subroutine does not return */
        var_5("fatal error - scanner input buffer overflow");
      }
      var_9 = pyVar14->yy_buf_size;
      if (var_9 < 1) {
        var_10 = var_9 + 7;
        if (-1 < var_9) {
          var_10 = var_9;
        }
        var_9 = (var_10 >> 3) + var_9;
      }
      else {
        var_9 = var_9 * 2;
      }
      pyVar14->yy_buf_size = var_9;
      var_12 = (char *)var_11(var_3,(long)(var_9 + 2));
      pyVar14->yy_ch_buf = var_12;
      if (var_12 == (char *)0x0) goto LAB_00110804;
      pyVar14 = *ppyVar13;
      var_4 = var_12 + ((int)pcVar2 - (int)var_3);
      pcVar2 = var_4;
      var_9 = ~(type_3)var_7 + pyVar14->yy_buf_size;
    }
    if (var_13 == (type_2 *)0x0) {
                    /* WARNING: Does not return */
      pcVar1 = (type_1 *)var_14();
      (*pcVar1)();
    }
    if ((pyVar14->yy_input_file == (type_4 *)0x0) || ((type_4 *)yyin == (type_4 *)0x0)) goto LAB_0011085f;
    var_10 = 0x2000;
    if (var_9 < 0x2001) {
      var_10 = var_9;
    }
    sVar7 = var_15(pyVar14->yy_ch_buf + var_7,1,(long)var_10,(type_4 *)yyin);
    var_9 = (int)sVar7;
    if (var_10 <= var_9) {
      var_10 = 0;
      ppyVar13 = var_1 + var_2;
      pyVar14 = *ppyVar13;
      yy_n_chars = var_9;
      pyVar14->yy_n_chars = var_9;
      goto LAB_001108a4;
    }
    var_10 = var_16((type_4 *)yyin);
    if (var_10 != 0) {
      var_3 = (char *)var_17(0,"%F%P: read in flex scanner failed\n",5);
      var_18(var_3);
    }
    var_10 = 0;
    ppyVar13 = var_1 + var_2;
    pyVar14 = *ppyVar13;
    yy_n_chars = var_9;
    pyVar14->yy_n_chars = var_9;
    if (var_9 != 0) goto LAB_001108a4;
  }
  var_9 = yy_n_chars;
  if (var_7 == 0) {
    var_10 = 1;
    var_19(yyin);
    ppyVar13 = var_1 + var_2;
    pyVar14 = *ppyVar13;
    var_9 = yy_n_chars;
  }
  else {
    var_10 = 2;
    ppyVar13 = var_1 + var_2;
    pyVar14 = *ppyVar13;
    pyVar14->yy_buffer_status = 2;
  }
LAB_001108a4:
  var_20 = (type_3)var_7 + var_9;
  var_3 = pyVar14->yy_ch_buf;
  if (pyVar14->yy_buf_size < var_20) {
    var_3 = (char *)var_11(var_3,(long)((var_9 >> 1) + var_20));
    pyVar14->yy_ch_buf = var_3;
    var_3 = (*ppyVar13)->yy_ch_buf;
    if (var_3 == (char *)0x0) {
                    /* WARNING: Subroutine does not return */
      var_5("out of dynamic memory in yy_get_next_buffer()");
    }
  }
  yy_n_chars = var_20;
  var_3[var_20] = '\0';
  (*ppyVar13)->yy_ch_buf[(long)var_20 + 1] = '\0';
  yytext = (*ppyVar13)->yy_ch_buf;
  return var_10;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (return_statement (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (char_literal (escape_sequence)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (number_literal))))) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) (number_literal) (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_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)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) right: (number_literal)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))))) (return_statement (identifier)))))

char MASKED(void)

{
  code *pcVar1;
  ulong uVar2;
  long lVar3;
  long lVar4;
  long lVar5;
  void *pvVar6;
  size_t sVar7;
  void *pvVar8;
  undefined8 uVar9;
  int iVar10;
  char cVar11;
  int iVar12;
  long lVar13;
  long lVar14;
  long *plVar15;
  long lVar16;
  long *plVar17;
  
  lVar4 = DAT_002a66e0;
  lVar3 = DAT_002a5838;
  uVar2 = DAT_002a5828;
  plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
  plVar17 = (long *)*plVar15;
  lVar16 = plVar17[1];
  if ((ulong)(lVar16 + 1 + (long)DAT_002a5830) < DAT_002a5828) {
                    /* WARNING: Subroutine does not return */
    FUN_001102f0("fatal flex scanner internal error--end of buffer missed");
  }
  lVar14 = DAT_002a5828 - DAT_002a66e0;
  if (*(int *)((long)plVar17 + 0x34) == 0) {
    return (lVar14 != 1) + '\x01';
  }
  lVar13 = lVar14 + -1;
  if (lVar13 != 0) {
    lVar5 = 0;
    do {
      *(undefined1 *)(lVar16 + lVar5) = *(undefined1 *)(lVar4 + lVar5);
      lVar5 = lVar5 + 1;
    } while (lVar13 != lVar5);
    plVar17 = (long *)*plVar15;
  }
  if ((int)plVar17[7] == 2) {
LAB_0011085f:
    DAT_002a5830 = 0;
    *(undefined4 *)((long)plVar17 + 0x1c) = 0;
  }
  else {
    iVar10 = (int)plVar17[3] - (int)lVar14;
    while (iVar10 < 1) {
      pvVar8 = (void *)plVar17[1];
      if ((int)plVar17[4] == 0) {
        plVar17[1] = 0;
LAB_00110804:
                    /* WARNING: Subroutine does not return */
        FUN_001102f0("fatal error - scanner input buffer overflow");
      }
      iVar10 = (int)plVar17[3];
      if (iVar10 < 1) {
        iVar12 = iVar10 + 7;
        if (-1 < iVar10) {
          iVar12 = iVar10;
        }
        iVar10 = (iVar12 >> 3) + iVar10;
      }
      else {
        iVar10 = iVar10 * 2;
      }
      *(int *)(plVar17 + 3) = iVar10;
      pvVar6 = realloc(pvVar8,(long)(iVar10 + 2));
      plVar17[1] = (long)pvVar6;
      if (pvVar6 == (void *)0x0) goto LAB_00110804;
      plVar17 = (long *)*plVar15;
      DAT_002a5828 = (long)((int)uVar2 - (int)pvVar8) + (long)pvVar6;
      uVar2 = DAT_002a5828;
      iVar10 = ~(uint)lVar13 + (int)plVar17[3];
    }
    if (lVar3 == 0) {
                    /* WARNING: Does not return */
      pcVar1 = (code *)invalidInstructionException();
      (*pcVar1)();
    }
    if ((*plVar17 == 0) || (DAT_002a5678 == (FILE *)0x0)) goto LAB_0011085f;
    iVar12 = 0x2000;
    if (iVar10 < 0x2001) {
      iVar12 = iVar10;
    }
    sVar7 = fread((void *)(plVar17[1] + lVar13),1,(long)iVar12,DAT_002a5678);
    iVar10 = (int)sVar7;
    if (iVar12 <= iVar10) {
      cVar11 = '\0';
      plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
      lVar16 = *plVar15;
      DAT_002a5830 = iVar10;
      *(int *)(lVar16 + 0x1c) = iVar10;
      goto LAB_001108a4;
    }
    iVar12 = ferror(DAT_002a5678);
    if (iVar12 != 0) {
      uVar9 = dcgettext(0,"%F%P: read in flex scanner failed\n",5);
      FUN_001283c0(uVar9);
    }
    cVar11 = '\0';
    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
    lVar16 = *plVar15;
    DAT_002a5830 = iVar10;
    *(int *)(lVar16 + 0x1c) = iVar10;
    if (iVar10 != 0) goto LAB_001108a4;
  }
  iVar10 = DAT_002a5830;
  if (lVar13 == 0) {
    cVar11 = '\x01';
    FUN_00110650(DAT_002a5678);
    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
    lVar16 = *plVar15;
    iVar10 = DAT_002a5830;
  }
  else {
    cVar11 = '\x02';
    plVar15 = (long *)(DAT_002a5838 + DAT_002a5848 * 8);
    lVar16 = *plVar15;
    *(undefined4 *)(lVar16 + 0x38) = 2;
  }
LAB_001108a4:
  iVar12 = (uint)lVar13 + iVar10;
  pvVar8 = *(void **)(lVar16 + 8);
  if (*(int *)(lVar16 + 0x18) < iVar12) {
    pvVar8 = realloc(pvVar8,(long)((iVar10 >> 1) + iVar12));
    *(void **)(lVar16 + 8) = pvVar8;
    pvVar8 = *(void **)(*plVar15 + 8);
    if (pvVar8 == (void *)0x0) {
                    /* WARNING: Subroutine does not return */
      FUN_001102f0("out of dynamic memory in yy_get_next_buffer()");
    }
  }
  DAT_002a5830 = iVar12;
  *(undefined1 *)((long)pvVar8 + (long)iVar12) = 0;
  *(undefined1 *)(*(long *)(*plVar15 + 8) + 1 + (long)iVar12) = 0;
  DAT_002a66e0 = *(undefined8 *)(*plVar15 + 8);
  return cVar11;
}

