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 );
}