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;
}