bool FUN_00402798(int *param_1)
{
int __fd;
int *piVar1;
char *pcVar2;
int iVar3;
char *pcVar4;
char *pcVar5;
stat sStack_a8;
if ((param_1[1] != -1) && (*param_1 != 0)) {
close(param_1[1]);
}
pcVar5 = g_icon_path;
param_1[1] = -1;
*param_1 = 0;
if ((pcVar5 != (char *)0x0) && (*pcVar5 != '\0')) {
__fd = open(pcVar5,0) //possible issue identified - semgrep
pcVar5 = g_icon_path;
if (__fd < 0) {
piVar1 = __errno_location();
pcVar2 = strerror(*piVar1);
pcVar4 = "%s: reading iconfile %s FAILED : %s\n";
}
else {
iVar3 = fstat(__fd,&sStack_a8) //possible issue identified - semgrep
pcVar5 = g_icon_path;
if (-1 < iVar3) {
param_1[1] = __fd;
*param_1 = sStack_a8.st_blocks;
return sStack_a8.st_blocks - 1U < 0x7fff;
}
piVar1 = __errno_location();
pcVar2 = strerror(*piVar1);
pcVar4 = "%s: stat-ing iconfile %s FAILED : %s\n";
}
warn(pcVar4,"get_icon_image",pcVar5,pcVar2);
}
return false;
}