undefined4 ip6tc_set_policy(undefined4 param_1,char *param_2,void *param_3,int param_4)
{
int iVar1;
int *piVar2;
int iVar3;
undefined4 uVar4;
iptc_fn = ip6tc_set_policy;
iVar1 = (*(code *)0x2144)(param_1,param_4);
if ((iVar1 == 0) || (*(int *)(iVar1 + 0x28) == 0)) {
piVar2 = __errno_location();
iVar1 = 2;
LAB_00012384:
*piVar2 = iVar1;
uVar4 = 0;
}
else {
iVar3 = strcmp(param_2,(char *)0x54f4);
uVar4 = 0xfffffffe;
if (iVar3 != 0) {
iVar3 = strcmp(param_2,(char *)0x54fc);
if (iVar3 != 0) {
piVar2 = __errno_location();
iVar1 = 0x16;
goto LAB_00012384;
}
uVar4 = 0xffffffff;
}
*(undefined4 *)(iVar1 + 0x30) = uVar4;
if (param_3 == (void *)0x0) {
*(undefined4 *)(iVar1 + 0x48) = 0;
}
else {
memcpy((void *)(iVar1 + 0x38),param_3,0x10) //possible issue identified - semgrep
*(undefined4 *)(iVar1 + 0x48) = 3;
}
uVar4 = 1;
*(undefined4 *)(param_4 + 4) = 1;
}
return uVar4;
}