/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
void service_events(void)
{
int iVar1;
undefined4 *puVar2;
FILE *pFVar3;
char *pcVar4;
char *pcVar5;
undefined *puVar6;
undefined **ppuVar7;
undefined **ppuVar8;
undefined **ppuVar9;
int iVar10;
code *pcVar11;
FILE FStack_128;
ppuVar7 = (undefined **)0x0;
do {
do {
ppuVar9 = (undefined **)PTR_LOOP_0041b0e0;
if (ppuVar7 != (undefined **)0x0) {
ppuVar9 = (undefined **)*ppuVar7;
}
if ((ppuVar9 == &PTR_LOOP_0041b0e0) || (ppuVar9 == (undefined **)0x0)) {
return;
}
iVar10 = 0;
ppuVar7 = (undefined **)0x0;
while( true ) {
if (ppuVar7 == (undefined **)0x0) {
ppuVar8 = (undefined **)ppuVar9[5];
}
else {
ppuVar8 = (undefined **)*ppuVar7;
}
if ((ppuVar8 == ppuVar9 + 5) || (ppuVar8 == (undefined **)0x0)) break;
if ((0 < (int)ppuVar8[2]) && (iVar1 = child_running(), iVar1 == 0)) {
ppuVar8[2] = (undefined *)0x0;
}
ppuVar7 = ppuVar8;
if ((int)ppuVar8[2] < 1) {
if (ppuVar8[5] != (undefined *)0x0) {
puVar2 = (undefined4 *)ppuVar8[1];
puVar6 = *ppuVar8;
ppuVar7 = (undefined **)ppuVar8[1];
*puVar2 = puVar6;
*(undefined4 **)(puVar6 + 4) = puVar2;
*ppuVar8 = (undefined *)0x0;
ppuVar8[1] = (undefined *)0x0;
FUN_00404c20(ppuVar8);
}
}
else {
iVar10 = iVar10 + 1;
}
}
ppuVar7 = ppuVar9;
} while ((iVar10 != 0) || (ppuVar8 = (undefined **)0x0, ppuVar9[3] == (undefined *)0x0));
while( true ) {
if (ppuVar8 == (undefined **)0x0) {
ppuVar8 = (undefined **)ppuVar9[5];
}
else {
ppuVar8 = (undefined **)*ppuVar8;
}
if ((ppuVar8 == ppuVar9 + 5) || (ppuVar8 == (undefined **)0x0)) break;
pcVar4 = ppuVar8[4];
if (pcVar4 != (char *)0x0) {
puVar6 = ppuVar9[4];
if (*pcVar4 == '@') {
pcVar4 = pcVar4 + 1;
if (puVar6 == (undefined *)0x0) {
strcpy((char *)&FStack_128,pcVar4) //possible issue identified - semgrep
}
else {
pcVar11 = sprintf;
pFVar3 = &FStack_128;
pcVar5 = "%s %s";
LAB_004050b4:
(*pcVar11)(pFVar3,pcVar5,pcVar4,puVar6);
}
}
else {
if (puVar6 == (undefined *)0x0) {
strcpy((char *)&FStack_128,pcVar4) //possible issue identified - semgrep
pcVar11 = fprintf;
pcVar4 = ppuVar9[2];
puVar6 = ppuVar8[3];
pcVar5 = "SERVD: event [%s/%s]\n";
pFVar3 = _stderr;
goto LAB_004050b4;
}
sprintf((char *)&FStack_128,"%s %s",pcVar4) //possible issue identified - semgrep
fprintf(_stderr,"SERVD: event [%s/%s] %s \n",ppuVar9[2],ppuVar8[3],ppuVar9[4]);
}
puVar6 = (undefined *)spawn(&FStack_128) //possible issue identified - semgrep
ppuVar8[2] = puVar6;
}
}
ppuVar9[3] = (undefined *)0x0;
if (ppuVar9[4] != (undefined *)0x0) {
free(ppuVar9[4]);
}
ppuVar9[4] = (undefined *)0x0;
} while( true );
}