undefined4 FUN_00408ba4(undefined4 *param_1,int param_2)
{
int *__ptr;
int iVar1;
undefined4 *puVar2;
int iVar3;
undefined4 uVar4;
undefined4 uVar5;
int *piVar6;
while( true ) {
__ptr = (int *)malloc(0x10) //possible issue identified - semgrep
piVar6 = __ptr + 2;
if (__ptr == (int *)0x0) {
client_printf(*param_1,"\n!! %s >>>>>>>>>>>>>>>>>>>>>>>>>\n","INTERNAL ERROR");
client_printf(*param_1,"!! %s: File:[%s]\n","INTERNAL ERROR",param_1[2]);
client_printf(*param_1,"memory allocation failed !");
client_printf(*param_1,"\n!! %s <<<<<<<<<<<<<<<<<<<<<<<<<\n","INTERNAL ERROR");
return 0xffffffff;
}
*__ptr = 0;
__ptr[1] = 0;
__ptr[3] = (int)piVar6;
__ptr[2] = (int)piVar6;
iVar1 = FUN_00407f84(param_1,piVar6);
if (iVar1 == 0) {
FUN_00407f28(piVar6,&DAT_004226a4);
free(__ptr);
return 0xffffffff;
}
puVar2 = *(undefined4 **)(param_2 + 4);
*__ptr = param_2;
*(int **)(param_2 + 4) = __ptr;
*puVar2 = __ptr;
__ptr[1] = (int)puVar2;
iVar3 = sobj_strcmp(iVar1);
if (iVar3 == 0) break;
iVar3 = sobj_strcmp(iVar1,&DAT_004226a0);
if (iVar3 != 0) {
client_printf(*param_1,"\n!! %s >>>>>>>>>>>>>>>>>>>>>>>>>\n","SYNTAX ERROR");
client_printf(*param_1,"!! %s: File:[%s]\n","SYNTAX ERROR",param_1[2]);
uVar5 = *param_1;
uVar4 = sobj_get_string(iVar1);
client_printf(uVar5,"got an invalid token [%s]",uVar4);
client_printf(*param_1,"\n!! %s <<<<<<<<<<<<<<<<<<<<<<<<<\n","SYNTAX ERROR");
uVar4 = 0xffffffff;
goto LAB_00408e08;
}
sobj_del(iVar1);
}
uVar4 = 0;
LAB_00408e08:
sobj_del(iVar1);
return uVar4;
}