void FUN_00404dfc(undefined4 param_1,undefined4 param_2)

{
  int iVar1;
  undefined4 uVar2;
  int iVar3;
  
  iVar3 = 0;
  do {
    iVar1 = vifs_is_upstream(iVar3);
    if (iVar1 != 0) {
      iVar1 = vifs_get_ver_by_id(iVar3);
      if (iVar1 == 0x22) {
        uVar2 = vifs_get_ipaddr();
        send_igmp_v3(uVar2,0x160000e0,0x22,0,param_2,0,4);
      }
      else {
        iVar1 = vifs_get_ver_by_id(iVar3);
        if ((iVar1 == 0x16) || (iVar1 = vifs_get_ver_by_id(iVar3), iVar1 == 0x12)) {
          uVar2 = vifs_get_ipaddr(iVar3);
          send_igmp(uVar2,param_1,0x16,10,param_2);
        }
      }
    }
    iVar3 = iVar3 + 1;
  } while (iVar3 != 8);
  return;
}