void RTMPSetPhyMode(int param_1,uint param_2)
{
char cVar1;
bool bVar2;
undefined1 uVar3;
uint uVar4;
char *pcVar5;
uint uVar6;
*(char *)(param_1 + 0x16982) = (char)param_2;
if (2 < RTDebugLevel) {
printk("RTMPSetPhyMode : PhyMode=%d, channel=%d \n",param_2 & 0xff,
*(undefined1 *)(param_1 + 0x169ec));
}
BuildChannelList(param_1);
pcVar5 = (char *)(param_1 + 0x4e3e);
uVar4 = 0;
while (((int)uVar4 < (int)(uint)*(byte *)(param_1 + 0x5058) &&
(cVar1 = *pcVar5, pcVar5 = pcVar5 + 10, *(char *)(param_1 + 0x169ec) != cVar1))) {
uVar4 = uVar4 + 1;
}
if (uVar4 == *(byte *)(param_1 + 0x5058)) {
if (*(char *)(param_1 + 0x169ec) != '\0') {
uVar3 = FirstChannel(param_1);
*(undefined1 *)(param_1 + 0x169ec) = uVar3;
}
if (RTDebugLevel != 0) {
printk("RTMPSetPhyMode: channel is out of range, use first channel=%d \n",
*(undefined1 *)(param_1 + 0x169ec));
}
}
memset((void *)(param_1 + 0x169ee),0,0xc) //possible issue identified - semgrep
memset((void *)(param_1 + 0x169fb),0,0xc) //possible issue identified - semgrep
memset((void *)(param_1 + 0x16a08),0,0xc) //possible issue identified - semgrep
if (param_2 < 0xc) {
uVar4 = 1 << (param_2 & 0x1f);
if ((uVar4 & 0xd04) == 0) {
if ((uVar4 & 0x2f9) == 0) {
if ((uVar4 & 2) != 0) {
*(undefined1 *)(param_1 + 0x16a0b) = 0x16;
*(undefined1 *)(param_1 + 0x169ee) = 0x82;
*(undefined1 *)(param_1 + 0x169ef) = 0x84;
*(undefined1 *)(param_1 + 0x169f0) = 0x8b;
*(undefined1 *)(param_1 + 0x169f1) = 0x96;
*(undefined1 *)(param_1 + 0x16a08) = 2;
*(undefined1 *)(param_1 + 0x16a09) = 4;
*(undefined1 *)(param_1 + 0x16a0a) = 0xb;
*(undefined1 *)(param_1 + 0x169fa) = 4;
*(undefined1 *)(param_1 + 0x16a07) = 0;
}
}
else {
*(undefined1 *)(param_1 + 0x169ee) = 0x82;
*(undefined1 *)(param_1 + 0x169ef) = 0x84;
*(undefined1 *)(param_1 + 0x169f0) = 0x8b;
*(undefined1 *)(param_1 + 0x169f1) = 0x96;
*(undefined1 *)(param_1 + 0x169fa) = 8;
*(undefined1 *)(param_1 + 0x16a08) = 2;
*(undefined1 *)(param_1 + 0x16a0a) = 0xb;
*(undefined1 *)(param_1 + 0x16a13) = 0x6c;
*(undefined1 *)(param_1 + 0x16a09) = 4;
*(undefined1 *)(param_1 + 0x16a0b) = 0x16;
*(undefined1 *)(param_1 + 0x16a0c) = 0xc;
*(undefined1 *)(param_1 + 0x16a0d) = 0x12;
*(undefined1 *)(param_1 + 0x16a0e) = 0x18;
*(undefined1 *)(param_1 + 0x16a0f) = 0x24;
*(undefined1 *)(param_1 + 0x16a10) = 0x30;
*(undefined1 *)(param_1 + 0x16a11) = 0x48;
*(undefined1 *)(param_1 + 0x16a12) = 0x60;
*(undefined1 *)(param_1 + 0x169f2) = 0x12;
*(undefined1 *)(param_1 + 0x169f3) = 0x24;
*(undefined1 *)(param_1 + 0x169f4) = 0x48;
*(undefined1 *)(param_1 + 0x169f5) = 0x6c;
*(undefined1 *)(param_1 + 0x169fb) = 0xc;
*(undefined1 *)(param_1 + 0x169fc) = 0x18;
*(undefined1 *)(param_1 + 0x169fd) = 0x30;
*(undefined1 *)(param_1 + 0x169fe) = 0x60;
*(undefined1 *)(param_1 + 0x16a07) = 4;
}
}
else {
*(undefined1 *)(param_1 + 0x169ee) = 0x8c;
*(undefined1 *)(param_1 + 0x169f0) = 0x98;
*(undefined1 *)(param_1 + 0x169f2) = 0xb0;
*(undefined1 *)(param_1 + 0x169fa) = 8;
*(undefined1 *)(param_1 + 0x16a08) = 0xc;
*(undefined1 *)(param_1 + 0x16a0a) = 0x18;
*(undefined1 *)(param_1 + 0x16a0f) = 0x6c;
*(undefined1 *)(param_1 + 0x16a09) = 0x12;
*(undefined1 *)(param_1 + 0x16a0b) = 0x24;
*(undefined1 *)(param_1 + 0x16a0c) = 0x30;
*(undefined1 *)(param_1 + 0x16a0d) = 0x48;
*(undefined1 *)(param_1 + 0x16a0e) = 0x60;
*(undefined1 *)(param_1 + 0x169ef) = 0x12;
*(undefined1 *)(param_1 + 0x169f1) = 0x24;
*(undefined1 *)(param_1 + 0x169f3) = 0x48;
*(undefined1 *)(param_1 + 0x169f4) = 0x60;
*(undefined1 *)(param_1 + 0x169f5) = 0x6c;
*(undefined1 *)(param_1 + 0x16a07) = 0;
}
}
uVar4 = 0;
while( true ) {
uVar6 = uVar4 & 0xff;
bVar2 = *(byte *)(param_1 + 0x51aa) <= uVar4;
uVar4 = uVar4 + 1;
if (bVar2) break;
MlmeUpdateTxRates(param_1,0,uVar6);
}
*(undefined4 *)(param_1 + 0x16ac4) = 0;
return;
}