/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
/* WARNING: Restarted to delay deadcode elimination for space: ram */
undefined4 yylex(void)
{
byte bVar1;
FILE *__stream;
undefined4 uVar2;
char *pcVar3;
void *pvVar4;
void *pvVar5;
int *piVar6;
byte *pbVar7;
undefined4 *puVar8;
uint uVar9;
int iVar10;
int iVar11;
byte *pbVar12;
int iVar13;
int iVar14;
byte *pbVar15;
byte *pbVar16;
byte *local_6c;
byte *local_68;
byte *local_64;
int local_5c;
byte *local_54;
if (DAT_0043e49c != 0) {
DAT_004411bc = 3;
DAT_0043e49c = 0;
}
if (DAT_004411c8 == 0) {
DAT_004411c8 = 1;
if (DAT_004411bc == 0) {
DAT_004411bc = 1;
}
if (DAT_004411a0 == (FILE *)0x0) {
DAT_004411a0 = _stdin;
}
if (DAT_004411a4 == (FILE *)0x0) {
DAT_004411a4 = _stdout;
}
if ((DAT_004411b4 == 0) || (*(int *)(DAT_004411b4 + DAT_004411b8 * 4) == 0)) {
FUN_00422d84();
puVar8 = (undefined4 *)(DAT_004411b4 + DAT_004411b8 * 4);
uVar2 = FUN_00423404(DAT_004411a0,0x4000);
*puVar8 = uVar2;
}
puVar8 = *(undefined4 **)(DAT_004411b4 + DAT_004411b8 * 4);
DAT_004411c4 = (byte *)puVar8[2];
DAT_004411a0 = (FILE *)*puVar8;
DAT_004411d0 = (byte *)puVar8[4];
DAT_004411cc = *DAT_004411c4;
}
switchD_00423a04_caseD_4d:
local_54 = DAT_004411c4;
*DAT_004411c4 = DAT_004411cc;
iVar13 = DAT_004411bc;
LAB_0042389c:
iVar14 = iVar13 * 2;
iVar10 = (int)*(short *)(&DAT_0042cf80 + iVar14);
while( true ) {
if (*(short *)(&DAT_0042c59c + iVar14) != 0) {
DAT_004411d8 = iVar13;
DAT_004411dc = DAT_004411c4;
}
uVar9 = *(uint *)(&DAT_0042c19c + (uint)DAT_004411cc * 4) & 0xff;
while( true ) {
iVar10 = (uVar9 + iVar10) * 2;
if (*(short *)(&DAT_0042d424 + iVar10) == iVar13) break;
iVar13 = (int)*(short *)(&DAT_0042ca1c + iVar14);
iVar14 = iVar13 * 2;
if (0x23f < iVar13) {
uVar9 = (uint)(byte)(&DAT_0042cec0)[uVar9 * 4];
}
iVar10 = (int)*(short *)(&DAT_0042cf80 + iVar14);
}
iVar13 = (int)*(short *)(&DAT_0042db44 + iVar10);
iVar14 = iVar13 * 2;
iVar10 = (int)*(short *)(&DAT_0042cf80 + iVar14);
DAT_004411c4 = DAT_004411c4 + 1;
if (iVar10 == 0x360) break;
DAT_004411cc = *DAT_004411c4;
}
iVar10 = (int)*(short *)(&DAT_0042c59c + iVar14);
LAB_00423964:
pbVar12 = DAT_004411c4;
if (iVar10 == 0) {
iVar10 = (int)*(short *)(&DAT_0042c59c + DAT_004411d8 * 2);
pbVar12 = DAT_004411dc;
}
yyleng = (int)pbVar12 - (int)local_54;
yytext = local_54;
DAT_004411cc = *pbVar12;
*pbVar12 = 0;
DAT_004411c4 = pbVar12;
LAB_004239b8:
pbVar15 = yytext;
switch(iVar10) {
case 0:
goto switchD_00423a04_caseD_0;
case 1:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 5;
uVar2 = 0x102;
break;
case 2:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x103;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
break;
case 3:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 9;
uVar2 = 0x111;
break;
case 4:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x112;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
break;
case 5:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0xb;
uVar2 = 0x114;
break;
case 6:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
uVar2 = 0x115;
break;
case 7:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0x17;
uVar2 = 0x139;
break;
case 8:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x13a;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
break;
case 9:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0xd;
uVar2 = 0x113;
break;
case 10:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x107;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
break;
case 0xb:
if (DAT_0043e498 == 0) {
uVar2 = 0x10c;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x10c;
}
break;
case 0xc:
if (DAT_0043e498 == 0) {
uVar2 = 0x148;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x148;
}
break;
case 0xd:
if (DAT_0043e498 == 0) {
uVar2 = 0x110;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x110;
}
break;
case 0xe:
if (DAT_0043e498 == 0) {
uVar2 = 0x140;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x140;
}
break;
case 0xf:
if (DAT_0043e498 == 0) {
uVar2 = 0x127;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x127;
}
break;
case 0x10:
if (DAT_0043e498 == 0) {
uVar2 = 0x128;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x128;
}
break;
case 0x11:
if (DAT_0043e498 == 0) {
uVar2 = 0x10d;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x10d;
}
break;
case 0x12:
if (DAT_0043e498 == 0) {
uVar2 = 0x10e;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x10e;
}
break;
case 0x13:
if (DAT_0043e498 == 0) {
uVar2 = 0x13b;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x13b;
}
break;
case 0x14:
if (DAT_0043e498 == 0) {
uVar2 = 0x13c;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x13c;
}
break;
case 0x15:
if (DAT_0043e498 == 0) {
uVar2 = 0x13e;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x13e;
}
break;
case 0x16:
if (DAT_0043e498 == 0) {
uVar2 = 0x13d;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x13d;
}
break;
case 0x17:
if (DAT_0043e498 == 0) {
uVar2 = 0x116;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x116;
}
break;
case 0x18:
if (DAT_0043e498 == 0) {
uVar2 = 0x117;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x117;
}
break;
case 0x19:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x109;
}
goto LAB_00423e68;
case 0x1a:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x10b;
}
goto LAB_00423dac;
case 0x1b:
if (DAT_0043e498 == 0) {
uVar2 = 0x118;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x118;
}
break;
case 0x1c:
if (DAT_0043e498 == 0) {
uVar2 = 0x119;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x119;
}
break;
case 0x1d:
if (DAT_0043e498 == 0) {
uVar2 = 0x11c;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x11c;
}
break;
case 0x1e:
if (DAT_0043e498 == 0) {
uVar2 = 0x11d;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x11d;
}
break;
case 0x1f:
if (DAT_0043e498 == 0) {
uVar2 = 0x11e;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x11e;
}
break;
case 0x20:
if (DAT_0043e498 == 0) {
uVar2 = 0x11f;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x11f;
}
break;
case 0x21:
if (DAT_0043e498 == 0) {
uVar2 = 0x11a;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x11a;
}
break;
case 0x22:
if (DAT_0043e498 == 0) {
uVar2 = 0x120;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x120;
}
break;
case 0x23:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x121;
}
goto LAB_00423d4c;
case 0x24:
if (DAT_0043e498 == 0) {
uVar2 = 0x122;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x122;
}
break;
case 0x25:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x123;
}
goto LAB_00423d90;
case 0x26:
if (DAT_0043e498 == 0) {
uVar2 = 0x124;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x124;
}
break;
case 0x27:
if (DAT_0043e498 == 0) {
uVar2 = 0x125;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x125;
}
break;
case 0x28:
if (DAT_0043e498 == 0) {
uVar2 = 0x11b;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x11b;
}
break;
case 0x29:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x121;
}
LAB_00423d4c:
uVar2 = 0x121;
break;
case 0x2a:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x123;
}
LAB_00423d90:
uVar2 = 0x123;
break;
case 0x2b:
if (DAT_0043e498 == 0) {
uVar2 = 0x126;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x126;
}
break;
case 0x2c:
if (DAT_0043e498 == 0) {
uVar2 = 0x10f;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x10f;
}
break;
case 0x2d:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0xf;
uVar2 = 0x108;
break;
case 0x2e:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x109;
}
LAB_00423e68:
uVar2 = 0x109;
break;
case 0x2f:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x10b;
}
LAB_00423dac:
uVar2 = 0x10b;
break;
case 0x30:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x10a;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
break;
case 0x31:
if (DAT_0043e498 != 0) {
FUN_004226c8("begin of closure",yytext,yyleng);
}
DAT_004411bc = 3;
uVar2 = 0x144;
break;
case 0x32:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 5;
uVar2 = 0x104;
break;
case 0x33:
if (DAT_0043e498 == 0) {
uVar2 = 0x105;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x105;
}
break;
case 0x34:
if (DAT_0043e498 == 0) {
uVar2 = 0x106;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x106;
}
break;
case 0x35:
if (DAT_0043e498 == 0) {
uVar2 = 0x149;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x149;
}
break;
case 0x36:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0x11;
uVar2 = 0x129;
break;
case 0x37:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x130;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
break;
case 0x38:
if (DAT_0043e498 == 0) {
uVar2 = 0x12a;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x12a;
}
break;
case 0x39:
if (DAT_0043e498 == 0) {
uVar2 = 299;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 299;
}
break;
case 0x3a:
if (DAT_0043e498 == 0) {
uVar2 = 0x131;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x131;
}
break;
case 0x3b:
if (DAT_0043e498 == 0) {
uVar2 = 0x132;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x132;
}
break;
case 0x3c:
if (DAT_0043e498 == 0) {
uVar2 = 300;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 300;
}
break;
case 0x3d:
if (DAT_0043e498 == 0) {
uVar2 = 0x12d;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x12d;
}
break;
case 0x3e:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x12e;
}
goto LAB_00423f94;
case 0x3f:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x12e;
}
goto LAB_00423f94;
case 0x40:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x12e;
}
goto LAB_00423f94;
case 0x41:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
return 0x12e;
}
LAB_00423f94:
uVar2 = 0x12e;
break;
case 0x42:
if (DAT_0043e498 == 0) {
uVar2 = 0x12f;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x12f;
}
break;
case 0x43:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0x13;
uVar2 = 0x133;
break;
case 0x44:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x137;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
break;
case 0x45:
if (DAT_0043e498 == 0) {
uVar2 = 0x134;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x134;
}
break;
case 0x46:
if (DAT_0043e498 == 0) {
uVar2 = 0x135;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x135;
}
break;
case 0x47:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0x15;
uVar2 = 0x136;
break;
case 0x48:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,&DAT_0042bec4,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x147;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
break;
case 0x49:
if (DAT_0043e498 == 0) {
uVar2 = 0x138;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x138;
}
break;
case 0x4a:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
DAT_004411bc = 0x19;
uVar2 = 0x13f;
break;
case 0x4b:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
DAT_004411bc = 3;
uVar2 = 0x147;
break;
case 0x4c:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x147;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
break;
case 0x4d:
goto switchD_00423a04_caseD_4d;
case 0x4e:
lineno = lineno + 1;
goto switchD_00423a04_caseD_4d;
case 0x4f:
if (DAT_0043e498 != 0) {
FUN_004226c8("comment",yytext,yyleng);
}
goto switchD_00423a04_caseD_4d;
case 0x50:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
_yylval = strtoll((char *)yytext,(char **)0x0,10);
uVar2 = 0x141;
break;
case 0x51:
if (DAT_0043e498 == 0) {
uVar2 = 0x142;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x142;
}
break;
case 0x52:
if (DAT_0043e498 == 0) {
uVar2 = 0x14a;
}
else {
FUN_004226c8(0,yytext,yyleng);
uVar2 = 0x14a;
}
break;
case 0x53:
if (DAT_0043e498 == 0) {
uVar2 = 0x143;
}
else {
FUN_004226c8("end of sentence",yytext,yyleng);
uVar2 = 0x143;
}
break;
case 0x54:
if (DAT_0043e498 == 0) {
uVar2 = 0x144;
}
else {
FUN_004226c8("begin of closure",yytext,yyleng);
uVar2 = 0x144;
}
break;
case 0x55:
if (DAT_0043e498 == 0) {
uVar2 = 0x145;
}
else {
FUN_004226c8("end of closure",yytext,yyleng);
uVar2 = 0x145;
}
break;
case 0x56:
if (DAT_0043e498 != 0) {
FUN_004226c8(0,yytext,yyleng);
}
pcVar3 = strdup((char *)yytext) //possible issue identified - semgrep
uVar2 = 0x146;
_yylval = CONCAT44(DAT_0043e97c,pcVar3);
break;
case 0x57:
fwrite(yytext,yyleng,1,DAT_004411a4);
goto switchD_00423a04_caseD_4d;
case 0x58:
goto switchD_00423a04_caseD_58;
case 0x59:
case 0x5a:
case 0x5b:
case 0x5c:
case 0x5d:
case 0x5e:
case 0x5f:
case 0x60:
case 0x61:
case 0x62:
case 99:
case 100:
case 0x65:
DAT_004411ac = DAT_004411ac + -1;
if (-1 < DAT_004411ac) {
iVar13 = DAT_004411b4;
if (DAT_004411b4 != 0) {
iVar13 = *(int *)(DAT_004411b4 + DAT_004411b8 * 4);
}
FUN_00422a40(iVar13);
free(*(void **)(&DAT_004411e0 + (DAT_004411ac + 1) * 0xc));
iVar13 = DAT_004411ac * 0xc;
configfilename = *(undefined4 *)(&DAT_004411e0 + iVar13);
lineno = *(int *)(&DAT_004411e8 + iVar13);
FUN_00422fb8(*(undefined4 *)(&DAT_004411e4 + iVar13));
goto switchD_00423a04_caseD_4d;
}
uVar2 = 0;
break;
default:
FUN_00422d3c("fatal flex scanner internal error--no action found");
goto switchD_00423a04_caseD_4d;
}
return uVar2;
switchD_00423a04_caseD_58:
*pbVar12 = DAT_004411cc;
puVar8 = *(undefined4 **)(DAT_004411b4 + DAT_004411b8 * 4);
if (puVar8[0xb] == 0) {
DAT_004411d0 = (byte *)puVar8[4];
*puVar8 = DAT_004411a0;
puVar8[0xb] = 1;
}
pbVar16 = *(byte **)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4);
if (pbVar16 + (int)DAT_004411d0 < DAT_004411c4) goto code_r0x0042466c;
DAT_004411c4 = yytext + (int)(pbVar12 + ~(uint)pbVar15);
iVar13 = DAT_004411bc;
iVar14 = DAT_004411d8;
pbVar12 = DAT_004411dc;
for (pbVar15 = yytext; pbVar15 < DAT_004411c4; pbVar15 = pbVar15 + 1) {
if (*pbVar15 == 0) {
uVar9 = 1;
}
else {
uVar9 = (uint)(byte)(&DAT_0042c19c)[(uint)*pbVar15 * 4];
}
iVar10 = iVar13 * 2;
DAT_004411d8 = iVar13;
DAT_004411dc = pbVar15;
if (*(short *)(&DAT_0042c59c + iVar10) == 0) goto LAB_00425444;
while( true ) {
iVar14 = DAT_004411d8;
pbVar12 = DAT_004411dc;
LAB_00425444:
DAT_004411dc = pbVar12;
DAT_004411d8 = iVar14;
iVar14 = ((int)*(short *)(&DAT_0042cf80 + iVar10) + uVar9) * 2;
if (iVar13 == *(short *)(&DAT_0042d424 + iVar14)) break;
iVar13 = (int)*(short *)(&DAT_0042ca1c + iVar10);
if (0x23f < iVar13) {
uVar9 = (uint)(byte)(&DAT_0042cec0)[uVar9 * 4];
}
iVar10 = iVar13 << 1;
}
iVar13 = (int)*(short *)(&DAT_0042db44 + iVar14);
iVar14 = DAT_004411d8;
pbVar12 = DAT_004411dc;
}
iVar11 = iVar13 * 2;
iVar10 = (int)*(short *)(&DAT_0042c59c + iVar11);
uVar9 = 1;
DAT_004411d8 = iVar14;
DAT_004411dc = pbVar12;
if (iVar10 != 0) {
DAT_004411d8 = iVar13;
DAT_004411dc = DAT_004411c4;
}
while( true ) {
iVar14 = ((int)*(short *)(&DAT_0042cf80 + iVar11) + uVar9) * 2;
if (iVar13 == *(short *)(&DAT_0042d424 + iVar14)) break;
iVar13 = (int)*(short *)(&DAT_0042ca1c + iVar11);
if (0x23f < iVar13) {
uVar9 = (uint)(byte)(&DAT_0042cec0)[uVar9 * 4];
}
iVar11 = iVar13 << 1;
}
iVar13 = (int)*(short *)(&DAT_0042db44 + iVar14);
if ((iVar13 == 0x23f) || (iVar13 == 0)) {
local_54 = yytext;
goto LAB_00423964;
}
DAT_004411c4 = DAT_004411c4 + 1;
local_54 = yytext;
LAB_00425580:
DAT_004411cc = *DAT_004411c4;
goto LAB_0042389c;
code_r0x0042466c:
local_64 = yytext;
if (pbVar16 + (int)(DAT_004411d0 + 1) < DAT_004411c4) {
FUN_00422d3c("fatal flex scanner internal error--end of buffer missed");
}
if (*(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 0x28) != 0) {
pbVar7 = DAT_004411c4 + (-1 - (int)yytext);
if (0 < (int)pbVar7) {
iVar13 = 0;
do {
bVar1 = *local_64;
iVar13 = iVar13 + 1;
local_64 = local_64 + 1;
*pbVar16 = bVar1;
pbVar16 = pbVar16 + 1;
} while (iVar13 < (int)pbVar7);
}
iVar13 = *(int *)(DAT_004411b4 + DAT_004411b8 * 4);
if (*(int *)(iVar13 + 0x2c) == 2) {
DAT_004411d0 = (byte *)0x0;
*(undefined4 *)(iVar13 + 0x10) = 0;
}
else {
local_6c = (byte *)((*(int *)(iVar13 + 0xc) + -1) - (int)pbVar7);
pbVar16 = DAT_004411c4;
while (DAT_004411c4 = pbVar16, (int)local_6c < 1) {
if (DAT_004411b4 == 0) {
iVar13 = 0;
}
else {
iVar13 = *(int *)(DAT_004411b4 + DAT_004411b8 * 4);
}
pvVar5 = *(void **)(iVar13 + 4);
if (*(int *)(iVar13 + 0x14) == 0) {
*(undefined4 *)(iVar13 + 4) = 0;
LAB_00424f44:
FUN_00422d3c("fatal error - scanner input buffer overflow");
}
else {
uVar9 = *(uint *)(iVar13 + 0xc);
if ((int)(uVar9 << 1) < 1) {
*(uint *)(iVar13 + 0xc) = (uVar9 >> 3) + uVar9;
}
else {
*(uint *)(iVar13 + 0xc) = uVar9 << 1;
}
pvVar4 = realloc(pvVar5,*(int *)(iVar13 + 0xc) + 2) //possible issue identified - semgrep
*(void **)(iVar13 + 4) = pvVar4;
if (pvVar4 == (void *)0x0) goto LAB_00424f44;
}
pbVar16 = pbVar16 + (*(int *)(iVar13 + 4) - (int)pvVar5);
local_6c = (byte *)((*(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 0xc) + -1) -
(int)pbVar7);
}
if (0x2000 < (int)local_6c) {
local_6c = (byte *)0x2000;
}
if (*(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 0x18) == 0) {
piVar6 = __errno_location();
*piVar6 = 0;
while( true ) {
DAT_004411d0 = (byte *)fread(pbVar7 + *(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) +
4),1,(size_t)local_6c,DAT_004411a0) //possible issue identified - semgrep
pbVar16 = DAT_004411d0;
if ((DAT_004411d0 != (byte *)0x0) ||
(iVar13 = ferror(DAT_004411a0), __stream = DAT_004411a0, pbVar16 = DAT_004411d0,
iVar13 == 0)) goto LAB_0042578c;
if (*piVar6 != 4) break;
*piVar6 = 0;
clearerr(__stream);
}
FUN_00422d3c("input in flex scanner failed");
pbVar16 = DAT_004411d0;
}
else {
local_68 = (byte *)0x0;
do {
iVar13 = fgetc(DAT_004411a0) //possible issue identified - semgrep
if (iVar13 == -1) {
iVar13 = ferror(DAT_004411a0);
pbVar16 = local_68;
if (iVar13 != 0) {
FUN_00422d3c("input in flex scanner failed");
pbVar16 = local_68;
}
break;
}
if (iVar13 == 10) {
local_68[(int)(pbVar7 + *(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4))] = 10;
pbVar16 = local_68 + 1;
break;
}
pbVar16 = local_68 + 1;
local_68[(int)(pbVar7 + *(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4))] =
(byte)iVar13;
local_68 = pbVar16;
} while (pbVar16 < local_6c);
}
LAB_0042578c:
DAT_004411d0 = pbVar16;
*(byte **)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 0x10) = DAT_004411d0;
}
if (DAT_004411d0 == (byte *)0x0) {
if (pbVar7 == (byte *)0x0) {
local_5c = 1;
FUN_00423684(DAT_004411a0);
}
else {
*(undefined4 *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 0x2c) = 2;
local_5c = 2;
}
}
else {
local_5c = 0;
}
iVar13 = *(int *)(DAT_004411b4 + DAT_004411b8 * 4);
if (*(byte **)(iVar13 + 0xc) < DAT_004411d0 + (int)pbVar7) {
pvVar5 = realloc(*(void **)(iVar13 + 4),
(size_t)(DAT_004411d0 + (int)pbVar7 + ((int)DAT_004411d0 >> 1))) //possible issue identified - semgrep
iVar10 = *(int *)(DAT_004411b4 + DAT_004411b8 * 4);
*(void **)(iVar13 + 4) = pvVar5;
if (*(int *)(iVar10 + 4) == 0) {
FUN_00422d3c("out of dynamic memory in yy_get_next_buffer()");
}
}
DAT_004411d0 = DAT_004411d0 + (int)pbVar7;
DAT_004411d0[*(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4)] = 0;
DAT_004411d0[*(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4) + 1] = 0;
yytext = *(byte **)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4);
if (local_5c != 1) {
if (local_5c == 2) goto LAB_004246cc;
if (local_5c == 0) {
DAT_004411c4 = yytext + (int)(pbVar12 + ~(uint)pbVar15);
iVar13 = DAT_004411bc;
iVar10 = DAT_004411d8;
pbVar15 = DAT_004411dc;
for (pbVar12 = yytext; DAT_004411d8 = iVar10, DAT_004411dc = pbVar15, local_54 = yytext,
pbVar12 < DAT_004411c4; pbVar12 = pbVar12 + 1) {
if (*pbVar12 == 0) {
uVar9 = 1;
}
else {
uVar9 = (uint)(byte)(&DAT_0042c19c)[(uint)*pbVar12 * 4];
}
iVar14 = iVar13 * 2;
DAT_004411d8 = iVar13;
DAT_004411dc = pbVar12;
if (*(short *)(&DAT_0042c59c + iVar14) == 0) goto LAB_0042595c;
while( true ) {
iVar10 = DAT_004411d8;
pbVar15 = DAT_004411dc;
LAB_0042595c:
DAT_004411dc = pbVar15;
DAT_004411d8 = iVar10;
iVar10 = ((int)*(short *)(&DAT_0042cf80 + iVar14) + uVar9) * 2;
if (iVar13 == *(short *)(&DAT_0042d424 + iVar10)) break;
iVar13 = (int)*(short *)(&DAT_0042ca1c + iVar14);
if (0x23f < iVar13) {
uVar9 = (uint)(byte)(&DAT_0042cec0)[uVar9 * 4];
}
iVar14 = iVar13 << 1;
}
iVar13 = (int)*(short *)(&DAT_0042db44 + iVar10);
iVar10 = DAT_004411d8;
pbVar15 = DAT_004411dc;
}
goto LAB_00425580;
}
goto switchD_00423a04_caseD_4d;
}
LAB_00425598:
DAT_004411c4 = yytext;
DAT_004411d4 = 0;
iVar10 = (DAT_004411bc + -1) / 2 + 0x59;
goto LAB_004239b8;
}
if (yytext == DAT_004411c4 + -1) goto LAB_00425598;
LAB_004246cc:
iVar13 = DAT_004411bc;
iVar14 = DAT_004411d8;
pbVar12 = DAT_004411dc;
for (pbVar15 = yytext;
pbVar15 < DAT_004411d0 + *(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4);
pbVar15 = pbVar15 + 1) {
if (*pbVar15 == 0) {
uVar9 = 1;
}
else {
uVar9 = (uint)(byte)(&DAT_0042c19c)[(uint)*pbVar15 * 4];
}
iVar10 = iVar13 * 2;
DAT_004411d8 = iVar13;
DAT_004411dc = pbVar15;
if (*(short *)(&DAT_0042c59c + iVar10) == 0) goto LAB_00424754;
while( true ) {
iVar14 = DAT_004411d8;
pbVar12 = DAT_004411dc;
LAB_00424754:
DAT_004411dc = pbVar12;
DAT_004411d8 = iVar14;
iVar14 = ((int)*(short *)(&DAT_0042cf80 + iVar10) + uVar9) * 2;
if (iVar13 == *(short *)(&DAT_0042d424 + iVar14)) break;
iVar13 = (int)*(short *)(&DAT_0042ca1c + iVar10);
if (0x23f < iVar13) {
uVar9 = (uint)(byte)(&DAT_0042cec0)[uVar9 * 4];
}
iVar10 = iVar13 << 1;
}
iVar13 = (int)*(short *)(&DAT_0042db44 + iVar14);
iVar14 = DAT_004411d8;
pbVar12 = DAT_004411dc;
}
local_54 = yytext;
iVar10 = (int)*(short *)(&DAT_0042c59c + iVar13 * 2);
DAT_004411c4 = DAT_004411d0 + *(int *)(*(int *)(DAT_004411b4 + DAT_004411b8 * 4) + 4);
DAT_004411d8 = iVar14;
DAT_004411dc = pbVar12;
goto LAB_00423964;
switchD_00423a04_caseD_0:
*pbVar12 = DAT_004411cc;
iVar10 = (int)*(short *)(&DAT_0042c59c + DAT_004411d8 * 2);
DAT_004411c4 = DAT_004411dc;
goto LAB_00423964;
}