void xtables_ipparse_any(char *param_1,int *param_2,uint *param_3,uint *param_4)

{
  bool bVar1;
  uint uVar2;
  char *pcVar3;
  uint *puVar4;
  uint uVar5;
  int *piVar6;
  int iVar7;
  uint uVar8;
  int *piVar9;
  uint uVar10;
  uint uVar11;
  char acStack_118 [255];
  undefined1 local_19;
  
  strncpy(acStack_118,param_1,0xff)   //possible issue identified - semgrep
  local_19 = 0;
  pcVar3 = strrchr(acStack_118,0x2f);
  if (pcVar3 == (char *)0x0) {
    pcVar3 = (char *)0x0;
  }
  else {
    *pcVar3 = '\0';
    pcVar3 = pcVar3 + 1;
  }
  puVar4 = (uint *)(*(code *)0x298c)(pcVar3);
  uVar5 = *puVar4;
  *param_3 = uVar5;
  if (uVar5 == 0) {
    strcpy(acStack_118,(char *)0x5c4c)   //possible issue identified - semgrep
  }
  piVar6 = (int *)(*(code *)0x488c)(acStack_118,param_4);
  *param_2 = (int)piVar6;
  uVar11 = *param_4;
  uVar10 = 0;
  uVar5 = 0;
  do {
    if (uVar11 <= uVar10) {
      return;
    }
    piVar6[uVar5] = piVar6[uVar5] & *param_3;
    uVar8 = 0;
    piVar9 = piVar6;
    do {
      bVar1 = uVar5 <= uVar8;
      uVar8 = uVar8 + 1;
      uVar2 = uVar5 + 1;
      if (bVar1) goto LAB_00014bdc;
      iVar7 = *piVar9;
      piVar9 = piVar9 + 1;
    } while (iVar7 != piVar6[-(1 - (uVar5 + 1))]);
    *param_4 = *param_4 - 1;
    uVar2 = uVar5;
LAB_00014bdc:
    uVar5 = uVar2;
    uVar10 = uVar10 + 1;
  } while( true );
}