/* 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;
}