void RTMPIoctlAddPMKIDCache(int *param_1,int *param_2)
{
int iVar1;
uint uVar2;
undefined1 auStack_98 [8];
undefined1 auStack_90 [8];
undefined1 auStack_88 [6];
undefined1 auStack_82 [6];
undefined1 local_7c;
undefined1 local_7b;
undefined1 local_7a;
undefined1 local_79;
undefined1 local_78;
undefined1 local_77;
uVar2 = (uint)*(byte *)(*param_1 + 0xfc);
iVar1 = *param_2;
if (5 < (uint)param_1[uVar2 * 0x450 + 0x1477]) {
if (*(int *)(iVar1 + 0x10) == 0x20) {
memmove(auStack_90,"PMK Name",8) //possible issue identified - semgrep
memmove(auStack_88,param_1 + uVar2 * 0x450 + 0x146b,6) //possible issue identified - semgrep
memmove(auStack_82,(void *)(iVar1 + 4),6) //possible issue identified - semgrep
RT_HMAC_SHA1(iVar1 + 0x14,0x20,auStack_90,0x14,&local_7c,0x14);
memmove(auStack_98,(void *)(iVar1 + 4),6) //possible issue identified - semgrep
RTMPAddPMKIDCache(param_1,uVar2,auStack_98,&local_7c,iVar1 + 0x14);
if (2 < RTDebugLevel) {
printk("WPA2(pre-auth):(%02x:%02x:%02x:%02x:%02x:%02x)Calc PMKID=%02x:%02x:%02x:%02x:%02x:%02x\n"
,*(undefined1 *)(iVar1 + 4),*(undefined1 *)(iVar1 + 5),*(undefined1 *)(iVar1 + 6),
*(undefined1 *)(iVar1 + 7),*(undefined1 *)(iVar1 + 8),*(undefined1 *)(iVar1 + 9),
local_7c,local_7b,local_7a,local_79,local_78,local_77);
}
if (2 < RTDebugLevel) {
printk("PMK =%02x:%02x:%02x:%02x-%02x:%02x:%02x:%02x\n",*(undefined1 *)(iVar1 + 0x14),
*(undefined1 *)(iVar1 + 0x15),*(undefined1 *)(iVar1 + 0x16),
*(undefined1 *)(iVar1 + 0x17),*(undefined1 *)(iVar1 + 0x18),
*(undefined1 *)(iVar1 + 0x19),*(undefined1 *)(iVar1 + 0x1a),
*(undefined1 *)(iVar1 + 0x1b));
}
}
else if (RTDebugLevel != 0) {
printk("Set::RT_OID_802_11_WPA2_ADD_PMKID_CACHE ERROR or is wep key \n");
}
}
if (2 < RTDebugLevel) {
printk("<== RTMPIoctlAddPMKIDCache\n");
}
return;
}