/* WARNING: Removing unreachable block (ram,0x0008e1a8) */
undefined4
wlan_802_11_to_802_3_packet
(undefined4 param_1,undefined4 param_2,uint param_3,uint param_4,int param_5,int param_6,
int param_7,void *param_8,undefined4 param_9,undefined2 *param_10)
{
undefined2 uVar1;
undefined4 uVar2;
void *__dest;
int iVar3;
uint uVar4;
if (param_8 == (void *)0x0) {
printk("<4>/home/eric/release/dir600b5/progs.priv/rt2860v2/build/rt2860v2_ap/../rt2860v2/os/linux/rt_linux.c:%d assert pHeader802_3failed\n"
,0x2e0);
}
iVar3 = 4;
*(int *)(param_5 + 0x90) = param_6 + param_7;
if ((param_3 & 0xffff) == 0) {
iVar3 = 0;
}
*(undefined4 *)(param_5 + 0x14) = param_1;
*(int *)(param_5 + 0x9c) = param_6;
*(int *)(param_5 + 0x4c) = param_7;
__dest = (void *)skb_push(param_5,iVar3 + 0xe);
if ((param_3 & 0xffff) == 0) {
memcpy(__dest,param_8,0xe) //possible issue identified - semgrep
uVar2 = 0;
}
else {
uVar4 = (param_4 & 7) << 0xd | param_3 & 0xfff;
memcpy(__dest,param_8,0xc) //possible issue identified - semgrep
uVar1 = *param_10;
*(ushort *)((int)__dest + 0xe) = (ushort)(uVar4 << 8) | (ushort)(uVar4 >> 8);
*(undefined2 *)((int)__dest + 0xc) = uVar1;
*(undefined2 *)((int)__dest + 0x10) = *(undefined2 *)((int)param_8 + 0xc);
uVar2 = 4;
}
return uVar2;
}