undefined4 safefile(char *param_1)

{
  __uid_t _Var1;
  __uid_t _Var2;
  int iVar3;
  int *piVar4;
  char *pcVar5;
  stat sStack_a8;
  
  _Var1 = getuid();
  _Var2 = geteuid();
  if (_Var1 == _Var2) {
    iVar3 = lstat(param_1,&sStack_a8)   //possible issue identified - semgrep
    if (iVar3 == 0) {
      _Var1 = getuid();
      if (_Var1 == sStack_a8.st_gid) {
        if ((sStack_a8.st_nlink & 0xf000) != 0x8000) {
          dprintf(5,"safefile","%s is an invalid file type 0x%o",param_1,sStack_a8.st_nlink & 0xf000
                 );
          return 0xffffffff;
        }
        return 0;
      }
      pcVar5 = "%s has invalid owner uid";
    }
    else {
      piVar4 = __errno_location();
      param_1 = strerror(*piVar4);
      pcVar5 = "lstat failed: %s";
    }
    dprintf(5,"safefile",pcVar5,param_1);
  }
  else {
    dprintf(5,"safefile","setuid\'ed execution not allowed");
  }
  return 0xffffffff;
}