undefined4 GetBssCoexEffectedChRange(int param_1,byte *param_2)

{
  char cVar1;
  byte bVar2;
  uint uVar3;
  char *pcVar4;
  int iVar5;
  int iVar6;
  
  memset(param_2,0,4)   //possible issue identified - semgrep
  pcVar4 = (char *)(param_1 + 0x4e3e);
  iVar6 = 0;
  while( true ) {
    if ((int)(uint)*(byte *)(param_1 + 0x5058) <= iVar6) {
      if (RTDebugLevel != 0) {
        printk("2.4GHz: Didn\'t found valid channel range, Ch index=%d, ChListNum=%d, CtrlCh=%d\n",
               iVar6,(uint)*(byte *)(param_1 + 0x5058),*(undefined1 *)(param_1 + 0x169ec));
      }
      return 0;
    }
    cVar1 = *pcVar4;
    pcVar4 = pcVar4 + 10;
    if (*(char *)(param_1 + 0x169ec) == cVar1) break;
    iVar6 = iVar6 + 1;
  }
  bVar2 = (byte)iVar6;
  *param_2 = bVar2;
  if ((*(uint *)(param_1 + 0x16a44) & 0x60000) == 0x20000) {
    if ((int)(uint)*(byte *)(param_1 + 0x5058) <= iVar6 + 4) {
      return 1;
    }
    param_2[1] = bVar2 + 4;
    iVar5 = iVar6 + 2;
LAB_000672ec:
    uVar3 = iVar5 + 5;
    iVar5 = iVar5 + -5;
    if ((int)uVar3 < 0) {
      uVar3 = 0;
    }
    if (iVar5 < 0) {
      iVar5 = 0;
    }
    param_2[2] = (byte)iVar5;
    param_2[3] = (byte)uVar3;
    if (RTDebugLevel < 3) {
      return 1;
    }
    if ((*(uint *)(param_1 + 0x16a44) & 0x60000) == 0x20000) {
      pcVar4 = "ABOVE";
    }
    else {
      pcVar4 = "BELOW";
    }
    printk("2.4GHz: Found CtrlCh idx(%d) from the ChList, ExtCh=%s, PrimaryCh=[Idx:%d, CH:%d], SecondaryCh=[Idx:%d, CH:%d], effected Ch=[CH:%d~CH:%d]!\n"
           ,iVar6,pcVar4,(uint)*param_2,*(undefined1 *)((uint)*param_2 * 10 + param_1 + 0x4e3e),
           (uint)param_2[1],*(undefined1 *)((uint)param_2[1] * 10 + param_1 + 0x4e3e),
           *(undefined1 *)((uint)param_2[2] * 10 + param_1 + 0x4e3e),
           *(undefined1 *)((uVar3 & 0xff) * 10 + param_1 + 0x4e3e));
    return 1;
  }
  if (-1 < iVar6 + -4) {
    iVar5 = iVar6 + -2;
    param_2[1] = bVar2 - 4;
    if (iVar5 != 0) goto LAB_000672ec;
  }
  return 1;
}