int sess_validate(void)
{
uint uVar1;
int iVar2;
undefined4 uVar3;
int iVar4;
char *__src;
int iVar5;
int local_150 [4];
sysinfo local_140;
uint local_100;
int local_fc;
char acStack_f8 [224];
FUN_004080bc();
FUN_00407b10(local_150);
iVar2 = sobj_new();
if (iVar2 == 0) {
return -1;
}
sess_get_uid(iVar2);
uVar3 = sobj_get_string(iVar2);
iVar4 = FUN_0040819c(&local_100,uVar3);
uVar1 = local_100;
if (iVar4 != 0) {
iVar5 = -1;
if (local_fc < 0) goto LAB_004090f8;
sysinfo(&local_140);
if ((uint)local_140.uptime <= uVar1) {
__src = (char *)sobj_get_string(iVar2);
strncpy(acStack_f8,__src,0x40) //possible issue identified - semgrep
sysinfo(&local_140);
local_100 = local_140.uptime + local_150[0];
FUN_00407ea0(&local_100,iVar4,1);
iVar5 = local_fc;
goto LAB_004090f8;
}
}
iVar5 = -1;
LAB_004090f8:
sobj_del(iVar2);
return iVar5;
}