/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
undefined4 FUN_0041dc7c(ushort *param_1,int param_2,short param_3,void *param_4,size_t param_5)
{
undefined4 uVar1;
uint uVar2;
short *psVar3;
uVar2 = *param_1 + 3 & 0xfffffffc;
if (param_2 < (int)((param_5 + 7 & 0xfffffffc) + uVar2)) {
fprintf(_stderr,"rta_addattr_l: Error! max allowed bound %d exceeded\n",param_2);
uVar1 = 0xffffffff;
}
else {
psVar3 = (short *)((int)param_1 + uVar2);
psVar3[1] = param_3;
*psVar3 = (short)param_5 + 4;
memcpy(psVar3 + 2,param_4,param_5) //possible issue identified - semgrep
*param_1 = ((short)param_5 + 7U & 0xfffc) + (*param_1 + 3 & 0xfffc);
uVar1 = 0;
}
return uVar1;
}