/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
undefined4 FUN_00404410(int param_1,char *param_2,char *param_3,undefined2 *param_4)
{
char *pcVar1;
int iVar2;
int *piVar3;
undefined1 auStack_78 [16];
undefined1 auStack_68 [16];
undefined2 local_58 [8];
uint local_48;
char acStack_34 [24];
pcVar1 = strchr(param_3,0x3a);
if (pcVar1 == (char *)0x0) {
iVar2 = FUN_00403bd8(param_1,param_2);
if (iVar2 < 0) {
pcVar1 = "%-8.8s Interface doesn\'t support IP addresses\n";
}
else {
iVar2 = FUN_004042a8(param_3,auStack_78);
if (-1 < iVar2) {
memcpy(auStack_68,auStack_78,0x10) //possible issue identified - semgrep
local_58[0] = 0;
local_48 = 0;
strncpy(acStack_34,param_2,0x10) //possible issue identified - semgrep
iVar2 = ioctl(param_1,0x8954,auStack_68);
if ((-1 < iVar2) && ((local_48 & 2) != 0)) {
memcpy(param_4,local_58,0x10) //possible issue identified - semgrep
return 0;
}
piVar3 = __errno_location();
fprintf(_stderr,
"Arp failed for %s on %s... (%d)\nTry to ping the address before setting it.\n",
param_3,param_2,*piVar3);
return 0xffffffff;
}
pcVar1 = "Invalid interface address %s\n";
param_2 = param_3;
}
}
else {
iVar2 = FUN_00403c88(param_1,param_2);
if (iVar2 < 0) {
pcVar1 = "%-8.8s Interface doesn\'t support MAC addresses\n";
}
else {
*param_4 = 1;
iVar2 = FUN_004040c0(param_3,param_4 + 1);
if (iVar2 != 0) {
return 0;
}
pcVar1 = "Invalid hardware address %s\n";
param_2 = param_3;
}
}
fprintf(_stderr,pcVar1,param_2);
return 0xffffffff;
}