/* WARNING: Restarted to delay deadcode elimination for space: register */

undefined4 RTMPSetProfileParameters(int param_1,undefined4 param_2)

{
  char cVar1;
  bool bVar2;
  char cVar3;
  undefined1 uVar4;
  byte bVar5;
  code cVar6;
  char cVar7;
  short sVar8;
  undefined2 uVar9;
  int iVar10;
  char *pcVar11;
  undefined4 uVar12;
  uint uVar13;
  uint uVar14;
  size_t sVar15;
  char *pcVar16;
  char *pcVar17;
  int iVar18;
  undefined1 *puVar19;
  uint *puVar20;
  int *piVar21;
  undefined4 *puVar22;
  int *piVar23;
  int iVar24;
  bool bVar25;
  void *pvVar26;
  code *pcVar27;
  undefined2 *puVar28;
  undefined1 *puVar29;
  int iVar30;
  undefined2 local_88 [2];
  char *local_84;
  undefined4 local_80;
  char local_7c;
  undefined1 local_7b;
  undefined1 local_7a;
  undefined1 local_79;
  undefined1 local_78;
  undefined1 local_77;
  char acStack_76 [10];
  int local_6c [17];
  
  os_alloc_mem(0,&local_84,0x800);
  if (local_84 == (char *)0x0) {
    return 1;
  }
  iVar10 = RTMPGetKeyParameter("MacAddress",local_84,0x19,param_2,1);
  if (((iVar10 != 0) && (iVar10 = RT_CfgSetMacAddress(param_1,local_84), iVar10 != 0)) &&
     (2 < RTDebugLevel)) {
    printk("MacAddress = %02x:%02x:%02x:%02x:%02x:%02x\n",*(undefined1 *)(param_1 + 0x16973),
           *(undefined1 *)(param_1 + 0x16974),*(undefined1 *)(param_1 + 0x16975),
           *(undefined1 *)(param_1 + 0x16976),*(undefined1 *)(param_1 + 0x16977),
           *(undefined1 *)(param_1 + 0x16978));
  }
  iVar10 = RTMPGetKeyParameter("CountryRegion",local_84,0x19,param_2,1);
  if ((iVar10 != 0) && (RT_CfgSetCountryRegion(param_1,local_84,1), 2 < RTDebugLevel)) {
    printk("CountryRegion=%d\n",*(undefined1 *)(param_1 + 0x16980));
  }
  iVar10 = RTMPGetKeyParameter("CountryRegionABand",local_84,0x19,param_2,1);
  if ((iVar10 != 0) && (RT_CfgSetCountryRegion(param_1,local_84,0), 2 < RTDebugLevel)) {
    printk("CountryRegionABand=%d\n",*(undefined1 *)(param_1 + 0x16981));
  }
  iVar10 = RTMPGetKeyParameter("CountryCode",local_84,0x19,param_2,1);
  if (iVar10 != 0) {
    RTMPSetCountryCode(param_1,local_84);
  }
  *(undefined1 *)(param_1 + 0x51aa) = 1;
  if (2 < RTDebugLevel) {
    printk("pAd->ApCfg.BssidNum=%d\n",1);
  }
  puVar29 = (undefined1 *)(param_1 + 0x51b2);
  bVar25 = false;
  iVar10 = 0;
  puVar19 = puVar29;
  while( true ) {
    if ((int)(uint)*(byte *)(param_1 + 0x51aa) <= iVar10) break;
    snprintf(&local_7c,0x10,"SSID%d",iVar10 + 1)   //possible issue identified - semgrep
    iVar18 = RTMPGetKeyParameter(&local_7c,local_84,0x21,param_2,0);
    pcVar11 = local_84;
    if (iVar18 != 0) {
      pcVar17 = (char *)(param_1 + iVar10 * 0x1140 + 0x51b3);
      sVar15 = strlen(local_84);
      memmove(pcVar17,pcVar11,sVar15)   //possible issue identified - semgrep
      sVar15 = strlen(local_84);
      *(undefined1 *)(param_1 + iVar10 * 0x1140 + sVar15 + 0x51b3) = 0;
      sVar15 = strlen(pcVar17);
      *puVar19 = (char)sVar15;
      if (2 < RTDebugLevel) {
        printk("SSID[%d]=%s\n",iVar10,pcVar17);
      }
      bVar25 = true;
    }
    puVar19 = puVar19 + 0x1140;
    iVar10 = iVar10 + 1;
  }
  if ((!bVar25) && (iVar10 = RTMPGetKeyParameter(&_LC89,local_84,0x100,param_2,0), iVar10 != 0)) {
    cVar3 = delimitcnt(local_84,&_LC37);
    if (*(char *)(param_1 + 0x51aa) == (char)(cVar3 + '\x01')) {
      bVar5 = *(byte *)(param_1 + 0x51aa);
    }
    else {
      printk("ERROR!!! ");
      printk("Your no. of SSIDs( = %d) does not match your BssidNum( = %d)!\n",cVar3 + '\x01',
             *(undefined1 *)(param_1 + 0x51aa));
      bVar5 = *(byte *)(param_1 + 0x51aa);
    }
    if (bVar5 < 2) {
      sVar15 = strlen(local_84);
      if ((sVar15 != 0) && (sVar15 = strlen(local_84), pcVar11 = local_84, sVar15 < 0x21)) {
        pcVar17 = (char *)(param_1 + 0x51b3);
        sVar15 = strlen(local_84);
        memmove(pcVar17,pcVar11,sVar15)   //possible issue identified - semgrep
        sVar15 = strlen(local_84);
        *(undefined1 *)(param_1 + sVar15 + 0x51b3) = 0;
        sVar15 = strlen(pcVar17);
        *(char *)(param_1 + 0x51b2) = (char)sVar15;
        if (2 < RTDebugLevel) {
          printk("SSID=%s\n",pcVar17);
        }
      }
    }
    else {
      pcVar11 = (char *)rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
      iVar10 = 0;
      while( true ) {
        pcVar17 = (char *)(param_1 + iVar10 * 0x1140 + 0x51b3);
        if ((pcVar11 == (char *)0x0) || ((int)(uint)*(byte *)(param_1 + 0x51aa) <= iVar10)) break;
        sVar15 = strlen(pcVar11);
        memmove(pcVar17,pcVar11,sVar15)   //possible issue identified - semgrep
        sVar15 = strlen(pcVar11);
        *(undefined1 *)(param_1 + iVar10 * 0x1140 + sVar15 + 0x51b3) = 0;
        sVar15 = strlen(pcVar17);
        *puVar29 = (char)sVar15;
        puVar29 = puVar29 + 0x1140;
        if (2 < RTDebugLevel) {
          printk("SSID[%d]=%s\n",iVar10,pcVar17);
        }
        pcVar11 = (char *)rstrtok(0,&_LC37)   //possible issue identified - semgrep
        iVar10 = iVar10 + 1;
      }
    }
  }
  iVar10 = RTMPGetKeyParameter("Channel",local_84,10,param_2,1);
  if (iVar10 != 0) {
    uVar4 = simple_strtol(local_84,0,10);
    *(undefined1 *)(param_1 + 0x169ec) = uVar4;
    if (2 < RTDebugLevel) {
      printk("Channel=%d\n");
    }
  }
  iVar10 = RTMPGetKeyParameter("WirelessMode",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    iVar18 = 0;
    while (iVar10 != 0) {
      if (iVar18 == 0) {
        uVar4 = simple_strtol(iVar10,0,10);
        *(undefined1 *)(param_1 + 0x62ea) = uVar4;
        RT_CfgSetWirelessMode(param_1,iVar10);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
    if (2 < RTDebugLevel) {
      printk("PhyMode=%d\n",*(undefined1 *)(param_1 + 0x16982));
    }
  }
  iVar10 = RTMPGetKeyParameter("BasicRate",local_84,10,param_2,1);
  if (iVar10 != 0) {
    uVar12 = simple_strtol(local_84,0,10);
    *(undefined4 *)(param_1 + 0x16a24) = uVar12;
    uVar12 = simple_strtol(local_84,0,10);
    *(undefined4 *)(param_1 + 0x16a28) = uVar12;
    if (2 < RTDebugLevel) {
      printk("BasicRate=%ld\n",*(undefined4 *)(param_1 + 0x16a24));
    }
  }
  iVar10 = RTMPGetKeyParameter("BeaconPeriod",local_84,10,param_2,1);
  if (iVar10 == 0) {
    iVar10 = *(int *)(param_1 + 0x29f8);
  }
  else {
    sVar8 = simple_strtol(local_84,0,10)   //possible issue identified - semgrep
    if (0x3d4 < (ushort)(sVar8 - 0x14U)) {
      sVar8 = 100   //possible issue identified - semgrep
    }
    *(short *)(param_1 + 0x169ea) = sVar8;
    if (RTDebugLevel < 3) {
      iVar10 = *(int *)(param_1 + 0x29f8);
    }
    else {
      printk("BeaconPeriod=%d\n",*(undefined2 *)(param_1 + 0x169ea));
      iVar10 = *(int *)(param_1 + 0x29f8);
    }
  }
  if ((iVar10 == 4) &&
     (iVar10 = RTMPGetKeyParameter("FreqDelta",local_84,10,param_2,1), iVar10 != 0)) {
    bVar5 = simple_strtol(local_84,0,10);
    *(byte *)(param_1 + 0x4bdc) = bVar5;
    if (0x20 < bVar5) {
      *(undefined1 *)(param_1 + 0x4bdc) = 0;
    }
    if (2 < RTDebugLevel) {
      printk("FreqDelta=%d\n",*(undefined1 *)(param_1 + 0x4bdc));
    }
  }
  iVar10 = RTMPGetKeyParameter("DtimPeriod",local_84,10,param_2,1);
  if (iVar10 != 0) {
    uVar4 = simple_strtol(local_84,0,10);
    *(undefined1 *)(param_1 + 0x16632) = uVar4;
    if (2 < RTDebugLevel) {
      printk("DtimPeriod=%d\n");
    }
  }
  iVar10 = RTMPGetKeyParameter("TxPower",local_84,10,param_2,1);
  if (iVar10 != 0) {
    uVar12 = simple_strtol(local_84,0,10);
    *(undefined4 *)(param_1 + 0x16a58) = uVar12;
    if (2 < RTDebugLevel) {
      printk("TxPower=%ld\n");
    }
  }
  iVar10 = RTMPGetKeyParameter("BGProtection",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if ((iVar10 == 1) || (iVar10 == 2)) {
      *(int *)(param_1 + 0x16a78) = iVar10;
    }
    else {
      *(undefined4 *)(param_1 + 0x16a78) = 0;
    }
    if (2 < RTDebugLevel) {
      printk("BGProtection=%ld\n",*(undefined4 *)(param_1 + 0x16a78));
    }
  }
  iVar10 = RTMPGetKeyParameter("DisableOLBC",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if ((iVar10 == 0) || (iVar10 != 1)) {
      *(undefined4 *)(param_1 + 0x16a84) = 0;
    }
    else {
      *(undefined4 *)(param_1 + 0x16a84) = 1;
    }
    if (2 < RTDebugLevel) {
      printk("OLBCDetection=%ld\n",*(undefined4 *)(param_1 + 0x16a84));
    }
  }
  iVar10 = RTMPGetKeyParameter("TxPreamble",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if (iVar10 == 1) {
      *(undefined4 *)(param_1 + 0x16a70) = 1;
    }
    else {
      *(undefined4 *)(param_1 + 0x16a70) = 0;
    }
    if (2 < RTDebugLevel) {
      printk("TxPreamble=%ld\n",*(undefined4 *)(param_1 + 0x16a70));
    }
  }
  iVar10 = RTMPGetKeyParameter("RTSThreshold",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if (0x92a < iVar10 - 1U) {
      iVar10 = 0x92b;
    }
    *(short *)(param_1 + 0x16a52) = (short)iVar10;
    if (2 < RTDebugLevel) {
      printk("RTSThreshold=%d\n",*(undefined2 *)(param_1 + 0x16a52));
    }
  }
  iVar10 = RTMPGetKeyParameter("FragThreshold",local_84,10,param_2,1);
  if (iVar10 != 0) {
    uVar13 = simple_strtol(local_84,0,10);
    *(undefined1 *)(param_1 + 0x16a74) = 0;
    if (uVar13 - 0x100 < 0x82b) {
      if ((uVar13 & 1) != 0) {
        sVar8 = (short)uVar13 + -1   //possible issue identified - semgrep
        goto LAB_0004ab00;
      }
      *(short *)(param_1 + 0x16a54) = (short)uVar13;
    }
    else {
      *(undefined1 *)(param_1 + 0x16a74) = 1;
      sVar8 = 0x92a   //possible issue identified - semgrep
LAB_0004ab00:
      *(short *)(param_1 + 0x16a54) = sVar8;
    }
    if (2 < RTDebugLevel) {
      printk("FragThreshold=%d\n",*(undefined2 *)(param_1 + 0x16a54));
    }
  }
  iVar10 = RTMPGetKeyParameter("TxBurst",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if (iVar10 == 0) {
      *(undefined1 *)(param_1 + 0x16a7d) = 0;
    }
    else {
      *(undefined1 *)(param_1 + 0x16a7d) = 1;
    }
    if (2 < RTDebugLevel) {
      printk("TxBurst=%d\n",*(undefined1 *)(param_1 + 0x16a7d));
    }
  }
  iVar10 = RTMPGetKeyParameter("PktAggregate",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if (iVar10 == 0) {
      *(undefined1 *)(param_1 + 0x16a7e) = 0;
    }
    else {
      *(undefined1 *)(param_1 + 0x16a7e) = 1;
    }
    *(undefined1 *)(param_1 + 0x16a7f) = *(undefined1 *)(param_1 + 0x16a7e);
    if (2 < RTDebugLevel) {
      printk("PktAggregate=%d\n",*(undefined1 *)(param_1 + 0x16a7e));
    }
  }
  pcVar11 = local_84;
  iVar10 = RTMPGetKeyParameter("WmmCapable",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x5b30);
    bVar25 = false;
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar18 = iVar18 + 1) {
      iVar10 = simple_strtol(iVar10,0,10);
      if (iVar10 == 0) {
        *puVar19 = 0;
        if (bVar25) goto LAB_0004ad18;
        *(undefined1 *)(param_1 + 0x16a90) = 0;
        *(undefined1 *)(param_1 + 0x16874) = 0;
      }
      else {
        *puVar19 = 1;
LAB_0004ad18:
        *(undefined1 *)(param_1 + 0x16a90) = 1;
        *(undefined1 *)(param_1 + 0x16874) = 1;
        bVar25 = true;
      }
      puVar19[2] = *puVar19;
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) WmmCapable=%d\n",iVar18,*puVar19);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      puVar19 = puVar19 + 0x1140;
    }
  }
  iVar10 = RTMPGetKeyParameter("DLSCapable",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x5b31);
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar18 = iVar18 + 1) {
      iVar10 = simple_strtol(iVar10,0,10);
      if (iVar10 == 0) {
        *puVar19 = 0;
      }
      else {
        *puVar19 = 1;
      }
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) DLSCapable=%d\n",iVar18,*puVar19);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      puVar19 = puVar19 + 0x1140;
    }
  }
  iVar10 = RTMPGetKeyParameter("APAifsn",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    pcVar27 = AsicEvaluateRxAnt + param_1 + 3;
    iVar18 = 0;
    while (iVar10 != 0) {
      cVar6 = (code)simple_strtol(iVar10,0,10);
      *pcVar27 = cVar6;
      pcVar27 = pcVar27 + 1;
      if (2 < RTDebugLevel) {
        printk("APAifsn[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("APCwmin",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x16a9b);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("APCwmin[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("APCwmax",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x16a9f);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("APCwmax[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("APTxop",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar28 = (undefined2 *)(param_1 + 0x16aa4);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar9 = simple_strtol(iVar10,0,10);
      *puVar28 = uVar9;
      puVar28 = puVar28 + 1;
      if (2 < RTDebugLevel) {
        printk("APTxop[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("APACM",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x16aac);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("APACM[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("BSSAifsn",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x1687b);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("BSSAifsn[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("BSSCwmin",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x1687f);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("BSSCwmin[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("BSSCwmax",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x16883);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("BSSCwmax[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("BSSTxop",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar28 = (undefined2 *)(param_1 + 0x16888);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar9 = simple_strtol(iVar10,0,10);
      *puVar28 = uVar9;
      puVar28 = puVar28 + 1;
      if (2 < RTDebugLevel) {
        printk("BSSTxop[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("BSSACM",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x16890);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("BSSACM[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("AckPolicy",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x16ab8);
    iVar18 = 0;
    while (iVar10 != 0) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk("AckPolicy[%d]=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("APSDCapable",pcVar11,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(pcVar11,0,10);
    if (iVar10 == 0) {
      *(undefined1 *)(param_1 + 0x16a2c) = 0;
    }
    else {
      *(undefined1 *)(param_1 + 0x16a2c) = 1;
    }
    if (2 < RTDebugLevel) {
      printk("APSDCapable=%d\n",*(undefined1 *)(param_1 + 0x16a2c));
    }
  }
  iVar10 = RTMPGetKeyParameter("MaxStaNum",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar18 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    iVar10 = 0;
    while ((iVar18 != 0 && (iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa)))) {
      ApCfg_Set_MaxStaNum_Proc(param_1,iVar10,iVar18);
      iVar18 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar10 = iVar10 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("IdleTimeout",local_84,10,param_2,1);
  if (iVar10 != 0) {
    ApCfg_Set_IdleTimeout_Proc(param_1,local_84);
  }
  iVar10 = RTMPGetKeyParameter("NoForwarding",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    puVar20 = (uint *)(param_1 + 0x52e0);
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar18 = iVar18 + 1) {
      iVar10 = simple_strtol(iVar10,0,10);
      *puVar20 = (uint)(iVar10 != 0);
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) NoForwarding=%ld\n",iVar18,(uint)(iVar10 != 0));
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      puVar20 = puVar20 + 0x450;
    }
  }
  iVar10 = RTMPGetKeyParameter("NoForwardingBTNBSSID",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if (iVar10 == 0) {
      *(undefined4 *)(param_1 + 0x165ac) = 0;
    }
    else {
      *(undefined4 *)(param_1 + 0x165ac) = 1;
    }
    if (2 < RTDebugLevel) {
      printk("NoForwardingBTNBSSID=%ld\n",*(undefined4 *)(param_1 + 0x165ac));
    }
  }
  iVar10 = RTMPGetKeyParameter("HideSSID",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x5920);
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar18 = iVar18 + 1) {
      iVar10 = simple_strtol(iVar10,0,10);
      if (iVar10 == 0) {
        *puVar19 = 0;
      }
      else {
        *puVar19 = 1;
      }
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) HideSSID=%d\n",iVar18,*puVar19);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      puVar19 = puVar19 + 0x1140;
    }
  }
  iVar10 = RTMPGetKeyParameter("StationKeepAlive",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    puVar28 = (undefined2 *)(param_1 + 0x5922);
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar18 = iVar18 + 1) {
      uVar9 = simple_strtol(iVar10,0,10);
      *puVar28 = uVar9;
      puVar28 = puVar28 + 0x8a0;
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) StationKeepAliveTime=%d\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
    }
  }
  iVar10 = RTMPGetKeyParameter("AutoChannelSelect",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if ((iVar10 == 0) || (uVar13 = simple_strtol(local_84,0,10), 2 < uVar13)) {
      *(undefined1 *)(param_1 + 0x16614) = 0;
    }
    else {
      *(uint *)(param_1 + 0x16618) = uVar13;
      *(undefined1 *)(param_1 + 0x16614) = 1;
    }
    if (2 < RTDebugLevel) {
      printk("AutoChannelAtBootup=%d\n",*(undefined1 *)(param_1 + 0x16614));
    }
  }
  iVar10 = RTMPGetKeyParameter("AutoChannelSkipList",local_84,0x32,param_2,0);
  if (iVar10 != 0) {
    cVar3 = delimitcnt(local_84,&_LC37);
    *(byte *)(param_1 + 0x16626) = cVar3 + 1U;
    if (10 < (byte)(cVar3 + 1U)) {
      if (2 < RTDebugLevel) {
        printk("Your no. of AutoChannelSkipList( %d ) is larger than 10 (boundary)\n");
      }
      *(undefined1 *)(param_1 + 0x16626) = 10;
    }
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x16627);
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x16626)));
        iVar18 = iVar18 + 1) {
      uVar4 = simple_strtol(iVar10,0,10);
      *puVar19 = uVar4;
      puVar19 = puVar19 + 1;
      if (2 < RTDebugLevel) {
        printk(" AutoChannelSkipList[%d]= %d \n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
    }
  }
  iVar10 = RTMPGetKeyParameter("ShortSlot",local_84,10,param_2,1);
  if ((iVar10 != 0) && (RT_CfgSetShortSlot(param_1,local_84), 2 < RTDebugLevel)) {
    printk("ShortSlot=%d\n",*(undefined1 *)(param_1 + 0x16a7c));
  }
  iVar10 = RTMPGetKeyParameter("DebugFlags",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    uVar12 = simple_strtol(local_84,0,0x10);
    *(undefined4 *)(param_1 + 0x16e7c) = uVar12;
    if (2 < RTDebugLevel) {
      printk("DebugFlags = 0x%02lx\n");
    }
  }
  iVar10 = RTMPGetKeyParameter("IEEE80211H",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    while (iVar10 != 0) {
      iVar10 = simple_strtol(iVar10,0,10);
      if (iVar10 == 0) {
        *(undefined1 *)(param_1 + 0x16a80) = 0;
      }
      else {
        *(undefined1 *)(param_1 + 0x16a80) = 1;
      }
      if (2 < RTDebugLevel) {
        printk("IEEE80211H=%d\n",*(undefined1 *)(param_1 + 0x16a80));
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
    }
  }
  iVar10 = RTMPGetKeyParameter("CSPeriod",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if (iVar10 == 0) {
      *(undefined1 *)(param_1 + 0x16ac9) = 0;
    }
    else {
      uVar4 = simple_strtol(local_84,0,10);
      *(undefined1 *)(param_1 + 0x16ac9) = uVar4;
    }
    if (2 < RTDebugLevel) {
      printk("CSPeriod=%d\n",*(undefined1 *)(param_1 + 0x16ac9));
    }
  }
  iVar10 = RTMPGetKeyParameter("RDRegion",local_84,0x80,param_2,1);
  if (iVar10 == 0) {
    *(undefined1 *)(param_1 + 0x16ad8) = 0xd;
    *(undefined1 *)(param_1 + 0x16acd) = 0;
    goto LAB_0004c404;
  }
  pcVar17 = "JAP_W53";
  iVar10 = 7;
  pcVar11 = local_84;
  while( true ) {
    cVar3 = *pcVar11;
    cVar1 = *pcVar17;
    cVar7 = cVar1;
    if (iVar10 == 0) break;
    iVar10 = iVar10 + -1;
    pcVar11 = pcVar11 + 1;
    cVar7 = cVar3;
    if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
  }
  if (cVar7 == cVar1) {
LAB_0004c154:
    *(undefined1 *)(param_1 + 0x16ad8) = 0xf;
    uVar4 = 3;
LAB_0004c1f8:
    *(undefined1 *)(param_1 + 0x16acd) = uVar4;
  }
  else {
    pcVar17 = "jap_w53";
    iVar10 = 7;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 == cVar1) goto LAB_0004c154;
    pcVar17 = "JAP_W56";
    iVar10 = 7;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 == cVar1) {
LAB_0004c1e8:
      *(undefined1 *)(param_1 + 0x16ad8) = 0xd;
      uVar4 = 4;
      goto LAB_0004c1f8;
    }
    pcVar17 = "jap_w56";
    iVar10 = 7;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 == cVar1) goto LAB_0004c1e8;
    pcVar17 = "JAP";
    iVar10 = 3;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 == cVar1) {
LAB_0004c284:
      *(undefined1 *)(param_1 + 0x16ad8) = 5;
      uVar4 = 2;
      goto LAB_0004c1f8;
    }
    pcVar17 = "jap";
    iVar10 = 3;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 == cVar1) goto LAB_0004c284;
    pcVar17 = "FCC";
    iVar10 = 3;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 == cVar1) {
LAB_0004c318:
      *(undefined1 *)(param_1 + 0x16ad8) = 5;
      uVar4 = 1;
      goto LAB_0004c1f8;
    }
    pcVar17 = "fcc";
    iVar10 = 3;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 == cVar1) goto LAB_0004c318;
    pcVar17 = "CE";
    iVar10 = 2;
    pcVar11 = local_84;
    while( true ) {
      cVar3 = *pcVar11;
      cVar1 = *pcVar17;
      cVar7 = cVar1;
      if (iVar10 == 0) break;
      iVar10 = iVar10 + -1;
      pcVar11 = pcVar11 + 1;
      cVar7 = cVar3;
      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
    }
    if (cVar7 != cVar1) {
      pcVar17 = "ce";
      iVar10 = 2;
      pcVar11 = local_84;
      while( true ) {
        cVar3 = *pcVar11;
        if (iVar10 == 0) break;
        iVar10 = iVar10 + -1;
        pcVar11 = pcVar11 + 1;
        if ((*pcVar17 != cVar3) || (pcVar17 = pcVar17 + 1, cVar3 == '\0')) break;
      }
    }
    *(undefined1 *)(param_1 + 0x16ad8) = 0xd;
    *(undefined1 *)(param_1 + 0x16acd) = 0;
  }
  if (2 < RTDebugLevel) {
    printk("RDRegion=%d\n",*(undefined1 *)(param_1 + 0x16acd));
  }
LAB_0004c404:
  iVar10 = RTMPGetKeyParameter("WirelessEvent",local_84,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    RtmpOsWlanEventSet(param_1,param_1 + 0x16e11,iVar10 != 0);
    if (2 < RTDebugLevel) {
      printk("WirelessEvent=%d\n",*(undefined1 *)(param_1 + 0x16e11));
    }
  }
  iVar10 = RTMPGetKeyParameter("AuthMode",local_84,0x80,param_2,1);
  if (iVar10 != 0) {
    iVar18 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    iVar10 = 0;
    while ((iVar18 != 0 && (iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa)))) {
      ApCfg_Set_AuthMode_Proc(param_1,iVar10,iVar18);
      iVar18 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar10 = iVar10 + 1;
    }
  }
  iVar10 = RTMPGetKeyParameter("EncrypType",local_84,0x80,param_2,1);
  if (iVar10 != 0) {
    piVar21 = (int *)(param_1 + 0x51e0);
    iVar10 = 0;
    piVar23 = piVar21;
    while (bVar25 = iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa), iVar10 = iVar10 + 1, bVar25) {
      *piVar23 = 1;
      piVar23 = piVar23 + 0x450;
    }
    pcVar11 = (char *)rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    for (iVar10 = 0; (pcVar11 != (char *)0x0 && (iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar10 = iVar10 + 1) {
      pcVar16 = "NONE";
      iVar18 = 4;
      pcVar17 = pcVar11;
      while( true ) {
        cVar3 = *pcVar17;
        cVar1 = *pcVar16;
        cVar7 = cVar1;
        if (iVar18 == 0) break;
        iVar18 = iVar18 + -1;
        pcVar17 = pcVar17 + 1;
        cVar7 = cVar3;
        if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
      }
      iVar18 = 1;
      if (cVar7 == cVar1) {
LAB_0004c874:
        *piVar21 = iVar18;
      }
      else {
        pcVar16 = "none";
        iVar18 = 4;
        pcVar17 = pcVar11;
        while( true ) {
          cVar3 = *pcVar17;
          cVar1 = *pcVar16;
          cVar7 = cVar1;
          if (iVar18 == 0) break;
          iVar18 = iVar18 + -1;
          pcVar17 = pcVar17 + 1;
          cVar7 = cVar3;
          if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
        }
        iVar18 = 1;
        if (cVar7 == cVar1) goto LAB_0004c874;
        pcVar16 = "WEP";
        iVar18 = 3;
        pcVar17 = pcVar11;
        while( true ) {
          cVar3 = *pcVar17;
          cVar1 = *pcVar16;
          cVar7 = cVar1;
          if (iVar18 == 0) break;
          iVar18 = iVar18 + -1;
          pcVar17 = pcVar17 + 1;
          cVar7 = cVar3;
          if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
        }
        if (cVar7 == cVar1) {
          *piVar21 = 0;
        }
        else {
          iVar18 = 3;
          pcVar16 = "wep";
          pcVar17 = pcVar11;
          while( true ) {
            cVar3 = *pcVar17;
            cVar1 = *pcVar16;
            cVar7 = cVar1;
            if (iVar18 == 0) break;
            iVar18 = iVar18 + -1;
            pcVar17 = pcVar17 + 1;
            cVar7 = cVar3;
            if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
          }
          if (cVar7 != cVar1) {
            pcVar16 = "TKIPAES";
            iVar18 = 7;
            pcVar17 = pcVar11;
            while( true ) {
              cVar3 = *pcVar17;
              cVar1 = *pcVar16;
              cVar7 = cVar1;
              if (iVar18 == 0) break;
              iVar18 = iVar18 + -1;
              pcVar17 = pcVar17 + 1;
              cVar7 = cVar3;
              if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
            }
            iVar18 = 8;
            if (cVar7 != cVar1) {
              iVar18 = 7;
              pcVar17 = "tkipaes";
              pcVar16 = pcVar11;
              while( true ) {
                cVar3 = *pcVar16;
                cVar1 = *pcVar17;
                cVar7 = cVar1;
                if (iVar18 == 0) break;
                iVar18 = iVar18 + -1;
                pcVar16 = pcVar16 + 1;
                cVar7 = cVar3;
                if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0'))
                break;
              }
              if (cVar7 == cVar1) {
                iVar18 = 8;
              }
              else {
                iVar18 = 4;
                pcVar17 = "TKIP";
                pcVar16 = pcVar11;
                while( true ) {
                  cVar3 = *pcVar16;
                  cVar1 = *pcVar17;
                  cVar7 = cVar1;
                  if (iVar18 == 0) break;
                  iVar18 = iVar18 + -1;
                  pcVar16 = pcVar16 + 1;
                  cVar7 = cVar3;
                  if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0'))
                  break;
                }
                iVar18 = 4;
                if (cVar7 != cVar1) {
                  iVar18 = 4;
                  pcVar17 = "tkip";
                  pcVar16 = pcVar11;
                  while( true ) {
                    cVar3 = *pcVar16;
                    cVar1 = *pcVar17;
                    cVar7 = cVar1;
                    if (iVar18 == 0) break;
                    iVar18 = iVar18 + -1;
                    pcVar16 = pcVar16 + 1;
                    cVar7 = cVar3;
                    if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0'))
                    break;
                  }
                  if (cVar7 == cVar1) {
                    iVar18 = 4;
                  }
                  else {
                    iVar18 = 3;
                    pcVar17 = "AES";
                    pcVar16 = pcVar11;
                    while( true ) {
                      cVar3 = *pcVar16;
                      cVar1 = *pcVar17;
                      cVar7 = cVar1;
                      if (iVar18 == 0) break;
                      iVar18 = iVar18 + -1;
                      pcVar16 = pcVar16 + 1;
                      cVar7 = cVar3;
                      if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0'))
                      break;
                    }
                    iVar18 = 6;
                    if (cVar7 != cVar1) {
                      iVar18 = 3;
                      pcVar17 = "aes";
                      while( true ) {
                        cVar3 = *pcVar11;
                        cVar1 = *pcVar17;
                        cVar7 = cVar1;
                        if (iVar18 == 0) break;
                        iVar18 = iVar18 + -1;
                        pcVar11 = pcVar11 + 1;
                        cVar7 = cVar3;
                        if ((cVar1 != cVar3) ||
                           (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                      }
                      if (cVar7 == cVar1) {
                        iVar18 = 6;
                      }
                      else {
                        iVar18 = 1;
                      }
                    }
                  }
                }
              }
            }
            goto LAB_0004c874;
          }
          *piVar21 = 0;
        }
      }
      if (*piVar21 == 8) {
        piVar21[1] = 4;
      }
      else {
        piVar21[1] = *piVar21;
      }
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) EncrypType=%d\n",iVar10,*piVar21);
      }
      pcVar11 = (char *)rstrtok(0,&_LC37)   //possible issue identified - semgrep
      piVar21 = piVar21 + 0x450;
    }
  }
  iVar10 = RTMPGetKeyParameter("WpaMixPairCipher",local_84,0x100,param_2,1);
  if (iVar10 != 0) {
    pcVar11 = (char *)rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    puVar22 = (undefined4 *)(param_1 + 0x51e8);
    iVar10 = 0;
    while (pcVar11 != (char *)0x0) {
      if ((puVar22[-3] - 8 < 2) && (puVar22[-2] == 8)) {
        pcVar16 = "WPA_AES_WPA2_TKIPAES";
        iVar18 = 0x14;
        pcVar17 = pcVar11;
        while( true ) {
          cVar3 = *pcVar17;
          cVar1 = *pcVar16;
          cVar7 = cVar1;
          if (iVar18 == 0) break;
          iVar18 = iVar18 + -1;
          pcVar17 = pcVar17 + 1;
          cVar7 = cVar3;
          if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
        }
        uVar12 = 7;
        if (cVar7 != cVar1) {
          iVar18 = 0x14;
          pcVar16 = "wpa_aes_wpa2_tkipaes";
          pcVar17 = pcVar11;
          while( true ) {
            cVar3 = *pcVar17;
            cVar1 = *pcVar16;
            cVar7 = cVar1;
            if (iVar18 == 0) break;
            iVar18 = iVar18 + -1;
            pcVar17 = pcVar17 + 1;
            cVar7 = cVar3;
            if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
          }
          if (cVar7 == cVar1) {
            uVar12 = 7;
          }
          else {
            pcVar16 = "WPA_AES_WPA2_TKIP";
            iVar18 = 0x11;
            pcVar17 = pcVar11;
            while( true ) {
              cVar3 = *pcVar17;
              cVar1 = *pcVar16;
              cVar7 = cVar1;
              if (iVar18 == 0) break;
              iVar18 = iVar18 + -1;
              pcVar17 = pcVar17 + 1;
              cVar7 = cVar3;
              if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
            }
            uVar12 = 6;
            if (cVar7 != cVar1) {
              iVar18 = 0x11;
              pcVar17 = "wpa_aes_wpa2_tkip";
              pcVar16 = pcVar11;
              while( true ) {
                cVar3 = *pcVar16;
                cVar1 = *pcVar17;
                cVar7 = cVar1;
                if (iVar18 == 0) break;
                iVar18 = iVar18 + -1;
                pcVar16 = pcVar16 + 1;
                cVar7 = cVar3;
                if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0'))
                break;
              }
              if (cVar7 == cVar1) {
                uVar12 = 6;
              }
              else {
                pcVar16 = "WPA_TKIP_WPA2_AES";
                iVar18 = 0x11;
                pcVar17 = pcVar11;
                while( true ) {
                  cVar3 = *pcVar17;
                  cVar1 = *pcVar16;
                  cVar7 = cVar1;
                  if (iVar18 == 0) break;
                  iVar18 = iVar18 + -1;
                  pcVar17 = pcVar17 + 1;
                  cVar7 = cVar3;
                  if ((cVar1 != cVar3) || (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0'))
                  break;
                }
                uVar12 = 9;
                if (cVar7 != cVar1) {
                  iVar18 = 0x11;
                  pcVar17 = "wpa_tkip_wpa2_aes";
                  pcVar16 = pcVar11;
                  while( true ) {
                    cVar3 = *pcVar16;
                    cVar1 = *pcVar17;
                    cVar7 = cVar1;
                    if (iVar18 == 0) break;
                    iVar18 = iVar18 + -1;
                    pcVar16 = pcVar16 + 1;
                    cVar7 = cVar3;
                    if ((cVar1 != cVar3) || (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0'))
                    break;
                  }
                  iVar18 = 0x15;
                  pcVar17 = "WPA_TKIP_WPA2_TKIPAES";
                  pcVar16 = pcVar11;
                  if (cVar7 == cVar1) {
                    uVar12 = 9;
                  }
                  else {
                    while( true ) {
                      cVar3 = *pcVar16;
                      cVar1 = *pcVar17;
                      cVar7 = cVar1;
                      if (iVar18 == 0) break;
                      iVar18 = iVar18 + -1;
                      cVar7 = cVar3;
                      if ((cVar1 != cVar3) ||
                         (pcVar17 = pcVar17 + 1, pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0'
                         )) break;
                    }
                    uVar12 = 0xb;
                    if (cVar7 != cVar1) {
                      iVar18 = 0x15;
                      pcVar17 = "wpa_tkip_wpa2_tkipaes";
                      pcVar16 = pcVar11;
                      while( true ) {
                        cVar3 = *pcVar16;
                        cVar1 = *pcVar17;
                        cVar7 = cVar1;
                        if (iVar18 == 0) break;
                        iVar18 = iVar18 + -1;
                        pcVar16 = pcVar16 + 1;
                        cVar7 = cVar3;
                        if ((cVar1 != cVar3) ||
                           (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                      }
                      if (cVar7 == cVar1) {
                        uVar12 = 0xb;
                      }
                      else {
                        iVar18 = 0x14;
                        pcVar17 = "WPA_TKIPAES_WPA2_AES";
                        pcVar16 = pcVar11;
                        while( true ) {
                          cVar3 = *pcVar16;
                          cVar1 = *pcVar17;
                          cVar7 = cVar1;
                          if (iVar18 == 0) break;
                          iVar18 = iVar18 + -1;
                          pcVar16 = pcVar16 + 1;
                          cVar7 = cVar3;
                          if ((cVar1 != cVar3) ||
                             (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                        }
                        uVar12 = 0xd;
                        if (cVar7 != cVar1) {
                          pcVar16 = "wpa_tkipaes_wpa2_aes";
                          iVar18 = 0x14;
                          pcVar17 = pcVar11;
                          while( true ) {
                            cVar3 = *pcVar17;
                            cVar1 = *pcVar16;
                            cVar7 = cVar1;
                            if (iVar18 == 0) break;
                            iVar18 = iVar18 + -1;
                            pcVar17 = pcVar17 + 1;
                            cVar7 = cVar3;
                            if ((cVar1 != cVar3) ||
                               (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                          }
                          if (cVar7 == cVar1) {
                            uVar12 = 0xd;
                          }
                          else {
                            pcVar16 = "WPA_TKIPAES_WPA2_TKIPAES";
                            iVar18 = 0x18;
                            pcVar17 = pcVar11;
                            while( true ) {
                              cVar3 = *pcVar17;
                              cVar1 = *pcVar16;
                              cVar7 = cVar1;
                              if (iVar18 == 0) break;
                              iVar18 = iVar18 + -1;
                              pcVar17 = pcVar17 + 1;
                              cVar7 = cVar3;
                              if ((cVar1 != cVar3) ||
                                 (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                            }
                            uVar12 = 0xf;
                            if (cVar7 != cVar1) {
                              pcVar16 = "wpa_tkipaes_wpa2_tkipaes";
                              iVar18 = 0x18;
                              pcVar17 = pcVar11;
                              while( true ) {
                                cVar3 = *pcVar17;
                                cVar1 = *pcVar16;
                                cVar7 = cVar1;
                                if (iVar18 == 0) break;
                                iVar18 = iVar18 + -1;
                                pcVar17 = pcVar17 + 1;
                                cVar7 = cVar3;
                                if ((cVar1 != cVar3) ||
                                   (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                              }
                              uVar12 = 0xf;
                              if (cVar7 != cVar1) {
                                pcVar16 = "WPA_TKIPAES_WPA2_TKIP";
                                iVar18 = 0x15;
                                pcVar17 = pcVar11;
                                while( true ) {
                                  cVar3 = *pcVar17;
                                  cVar1 = *pcVar16;
                                  cVar7 = cVar1;
                                  if (iVar18 == 0) break;
                                  iVar18 = iVar18 + -1;
                                  pcVar17 = pcVar17 + 1;
                                  cVar7 = cVar3;
                                  if ((cVar1 != cVar3) ||
                                     (pcVar16 = pcVar16 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                                }
                                uVar12 = 0xe;
                                if (cVar7 != cVar1) {
                                  pcVar17 = "wpa_tkipaes_wpa2_tkip";
                                  iVar18 = 0x15;
                                  while( true ) {
                                    cVar3 = *pcVar11;
                                    cVar1 = *pcVar17;
                                    cVar7 = cVar1;
                                    if (iVar18 == 0) break;
                                    iVar18 = iVar18 + -1;
                                    pcVar11 = pcVar11 + 1;
                                    cVar7 = cVar3;
                                    if ((cVar1 != cVar3) ||
                                       (pcVar17 = pcVar17 + 1, cVar7 = cVar1, cVar3 == '\0')) break;
                                  }
                                  if (cVar7 == cVar1) {
                                    uVar12 = 0xe;
                                  }
                                  else {
                                    uVar12 = 0xf;
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
        *puVar22 = uVar12;
        printk("I/F(ra%d) MixWPACipher=0x%02x\n",iVar10,*puVar22);
      }
      pcVar11 = (char *)rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar10 = iVar10 + 1;
      puVar22 = puVar22 + 0x450;
    }
  }
  iVar10 = RTMPGetKeyParameter("RekeyMethod",local_84,0x80,param_2,1);
  if (iVar10 != 0) {
    pcVar11 = (char *)rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    puVar22 = (undefined4 *)(param_1 + 0x54e4);
    iVar10 = 0;
    while (pcVar11 != (char *)0x0) {
      pcVar16 = "TIME";
      cVar3 = *pcVar11;
      pcVar17 = pcVar11;
      do {
        cVar1 = *pcVar16;
        pcVar17 = pcVar17 + 1;
        pcVar16 = pcVar16 + 1;
        cVar7 = cVar3;
        if (cVar1 != cVar3) break;
        bVar25 = cVar3 != '\0';
        cVar3 = *pcVar17;
        cVar7 = cVar1;
      } while (bVar25);
      if (cVar7 == cVar1) {
        *puVar22 = 0;
      }
      else {
        pcVar16 = "time";
        cVar3 = *pcVar11;
        pcVar17 = pcVar11;
        do {
          cVar1 = *pcVar16;
          pcVar17 = pcVar17 + 1;
          pcVar16 = pcVar16 + 1;
          cVar7 = cVar3;
          if (cVar1 != cVar3) break;
          bVar25 = cVar3 != '\0';
          cVar3 = *pcVar17;
          cVar7 = cVar1;
        } while (bVar25);
        if (cVar7 == cVar1) {
          *puVar22 = 0;
        }
        else {
          pcVar16 = "PKT";
          cVar3 = *pcVar11;
          pcVar17 = pcVar11;
          do {
            cVar1 = *pcVar16;
            pcVar17 = pcVar17 + 1;
            pcVar16 = pcVar16 + 1;
            cVar7 = cVar3;
            if (cVar1 != cVar3) break;
            bVar25 = cVar3 != '\0';
            cVar3 = *pcVar17;
            cVar7 = cVar1;
          } while (bVar25);
          uVar12 = 1;
          if (cVar7 != cVar1) {
            pcVar16 = "pkt";
            cVar3 = *pcVar11;
            pcVar17 = pcVar11;
            do {
              cVar1 = *pcVar16;
              pcVar17 = pcVar17 + 1;
              pcVar16 = pcVar16 + 1;
              cVar7 = cVar3;
              if (cVar1 != cVar3) break;
              bVar25 = cVar3 != '\0';
              cVar3 = *pcVar17;
              cVar7 = cVar1;
            } while (bVar25);
            if (cVar7 == cVar1) {
              uVar12 = 1;
            }
            else {
              pcVar16 = "DISABLE";
              cVar3 = *pcVar11;
              pcVar17 = pcVar11;
              do {
                cVar1 = *pcVar16;
                pcVar17 = pcVar17 + 1;
                pcVar16 = pcVar16 + 1;
                cVar7 = cVar3;
                if (cVar1 != cVar3) break;
                bVar25 = cVar3 != '\0';
                cVar3 = *pcVar17;
                cVar7 = cVar1;
              } while (bVar25);
              uVar12 = 2;
              if (cVar7 != cVar1) {
                cVar3 = *pcVar11;
                pcVar17 = "disable";
                do {
                  cVar1 = *pcVar17;
                  pcVar11 = pcVar11 + 1;
                  pcVar17 = pcVar17 + 1;
                  if (cVar1 != cVar3) break;
                  bVar25 = cVar3 != '\0';
                  cVar3 = *pcVar11;
                } while (bVar25);
                uVar12 = 2;
              }
            }
          }
          *puVar22 = uVar12;
        }
      }
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) ReKeyMethod=%ld\n",iVar10,*puVar22);
      }
      pcVar11 = (char *)rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar10 = iVar10 + 1;
      puVar22 = puVar22 + 0x450;
    }
    if (iVar10 == 1) {
      puVar22 = (undefined4 *)(param_1 + 0x6624);
      for (iVar10 = 1; iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa); iVar10 = iVar10 + 1) {
        *puVar22 = *(undefined4 *)(param_1 + 0x54e4);
        puVar22 = puVar22 + 0x450;
        if (2 < RTDebugLevel) {
          printk("I/F(ra%d) ReKeyMethod=%ld\n",iVar10);
        }
      }
    }
  }
  iVar10 = RTMPGetKeyParameter("RekeyInterval",local_84,0xff,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    piVar23 = (int *)(param_1 + 0x54e8);
    iVar18 = 0;
    while (iVar10 != 0) {
      iVar10 = simple_strtol(iVar10,0,10);
      if (0x3fffff4 < iVar10 - 10U) {
        iVar10 = 0xe10;
      }
      *piVar23 = iVar10;
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) ReKeyInterval=%ld\n",iVar18,*piVar23);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
      piVar23 = piVar23 + 0x450;
    }
    if (iVar18 == 1) {
      puVar22 = (undefined4 *)(param_1 + 0x6628);
      for (iVar10 = 1; iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa); iVar10 = iVar10 + 1) {
        *puVar22 = *(undefined4 *)(param_1 + 0x54e8);
        puVar22 = puVar22 + 0x450;
        if (2 < RTDebugLevel) {
          printk("I/F(ra%d) ReKeyInterval=%ld\n",iVar10);
        }
      }
    }
  }
  iVar10 = RTMPGetKeyParameter("PMKCachePeriod",local_84,0xff,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
    piVar23 = (int *)(param_1 + 0x551c);
    iVar18 = 0;
    while (iVar10 != 0) {
      iVar10 = simple_strtol(iVar10,0,10);
      *piVar23 = iVar10 * 15000;
      piVar23 = piVar23 + 0x450;
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) PMKCachePeriod=%ld\n",iVar18);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
    }
    if (iVar18 == 1) {
      puVar22 = (undefined4 *)(param_1 + 0x665c);
      for (iVar10 = 1; iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa); iVar10 = iVar10 + 1) {
        *puVar22 = *(undefined4 *)(param_1 + 0x551c);
        puVar22 = puVar22 + 0x450;
        if (2 < RTDebugLevel) {
          printk("I/F(ra%d) PMKCachePeriod=%ld\n",iVar10);
        }
      }
    }
  }
  if (2 < RTDebugLevel) {
    printk("pAd->ApCfg.BssidNum=%d\n",*(undefined1 *)(param_1 + 0x51aa));
  }
  bVar25 = false;
  iVar10 = 0;
  while (iVar18 = iVar10, iVar10 = iVar18 + 1, iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)) {
    snprintf(&local_7c,0x10,"WPAPSK%d",iVar10)   //possible issue identified - semgrep
    iVar30 = RTMPGetKeyParameter(&local_7c,local_84,0x41,param_2,0);
    if (iVar30 != 0) {
      rtmp_parse_wpapsk_buffer_from_file(param_1,local_84,iVar18);
      bVar25 = true;
    }
  }
  if ((!bVar25) && (iVar10 = RTMPGetKeyParameter("WPAPSK",local_84,0x200,param_2,0), iVar10 != 0)) {
    if (*(char *)(param_1 + 0x51aa) == '\x01') {
      rtmp_parse_wpapsk_buffer_from_file(param_1,local_84,0);
    }
    else {
      iVar18 = rstrtok(local_84,&_LC37)   //possible issue identified - semgrep
      iVar10 = 0;
      while (iVar18 != 0) {
        rtmp_parse_wpapsk_buffer_from_file(param_1,iVar18,iVar10);
        iVar18 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
        iVar10 = iVar10 + 1;
      }
    }
  }
  iVar10 = 0;
  while (pcVar11 = local_84, iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa)) {
    if (2 < RTDebugLevel) {
      printk("I/F(ra%d) WPAPSK Key => \n",iVar10);
    }
    uVar13 = 0;
    puVar19 = (undefined1 *)(iVar10 * 0x1140 + param_1 + 0x5275);
    do {
      if (2 < RTDebugLevel) {
        printk("%02x:",*puVar19);
      }
      uVar14 = uVar13 & 0xf;
      puVar19 = puVar19 + 1;
      uVar13 = uVar13 + 1;
      if ((uVar14 == 0xf) && (2 < RTDebugLevel)) {
        printk(&_LC4)   //possible issue identified - semgrep
      }
    } while (uVar13 != 0x20);
    if (RTDebugLevel < 3) {
      iVar10 = iVar10 + 1;
    }
    else {
      printk(&_LC4)   //possible issue identified - semgrep
      iVar10 = iVar10 + 1;
    }
  }
  memset(local_6c,0,0x40)   //possible issue identified - semgrep
  iVar10 = RTMPGetKeyParameter("DefaultKeyID",pcVar11,0x19,param_2,1);
  if (iVar10 == 0) {
    iVar10 = 0;
  }
  else {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x5240);
    iVar18 = 0;
    while (iVar10 != 0) {
      if ((int)(uint)*(byte *)(param_1 + 0x51aa) <= iVar18) {
        iVar10 = 0;
        goto LAB_0004d59c;
      }
      iVar10 = simple_strtol(iVar10,0,10);
      if (iVar10 - 1U < 4) {
        *puVar19 = (char)(iVar10 - 1U);
      }
      else {
        *puVar19 = 0;
      }
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) DefaultKeyID(0~3)=%d\n",iVar18,*puVar19);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      iVar18 = iVar18 + 1;
      puVar19 = puVar19 + 0x1140;
    }
    iVar10 = 0;
  }
LAB_0004d59c:
  do {
    iVar30 = iVar10 + 1;
    snprintf(&local_7c,0x10,"Key%dType",iVar30)   //possible issue identified - semgrep
    iVar18 = RTMPGetKeyParameter(&local_7c,pcVar11,0x80,param_2,1);
    if (iVar18 != 0) {
      iVar18 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
      iVar24 = 0;
      while (iVar18 != 0) {
        if (iVar24 == 0) {
          local_6c[0] = simple_strtol(iVar18,0,10);
        }
        iVar18 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
        iVar24 = iVar24 + 1;
      }
      if (2 < RTDebugLevel) {
        printk("pAd->ApCfg.BssidNum=%d\n",*(undefined1 *)(param_1 + 0x51aa));
      }
      piVar21 = local_6c;
      bVar25 = false;
      iVar18 = 0;
      piVar23 = piVar21;
      while( true ) {
        if ((int)(uint)*(byte *)(param_1 + 0x51aa) <= iVar18) break;
        snprintf(&local_7c,0x10,"Key%dStr%d",iVar30,iVar18 + 1)   //possible issue identified - semgrep
        iVar24 = RTMPGetKeyParameter(&local_7c,pcVar11,0x80,param_2,0);
        if (iVar24 != 0) {
          rtmp_parse_key_buffer_from_file(param_1,pcVar11,*piVar23,iVar18,iVar10);
          bVar25 = true;
        }
        piVar23 = piVar23 + 1;
        iVar18 = iVar18 + 1;
      }
      if (!bVar25) {
        snprintf(&local_7c,0x10,"Key%dStr",iVar30)   //possible issue identified - semgrep
        iVar18 = RTMPGetKeyParameter(&local_7c,pcVar11,0x80,param_2,0);
        if (iVar18 != 0) {
          if (*(char *)(param_1 + 0x51aa) == '\x01') {
            rtmp_parse_key_buffer_from_file(param_1,pcVar11,local_6c[0],0,iVar10);
          }
          else {
            iVar24 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
            iVar18 = 0;
            while (iVar24 != 0) {
              rtmp_parse_key_buffer_from_file(param_1,iVar24,*piVar21,iVar18,iVar10);
              iVar24 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
              piVar21 = piVar21 + 1;
              iVar18 = iVar18 + 1;
            }
          }
        }
      }
    }
    pcVar17 = local_84;
    iVar10 = iVar30;
  } while (iVar30 != 4);
  memset(&local_7c,0,6)   //possible issue identified - semgrep
  memset((void *)(param_1 + 0x5928),0,0x208)   //possible issue identified - semgrep
  snprintf((char *)local_6c,0x20,"AccessPolicy%d",0)   //possible issue identified - semgrep
  iVar10 = RTMPGetKeyParameter(local_6c,pcVar17,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(pcVar17,0,10);
    if (iVar10 == 1) {
      *(undefined4 *)(param_1 + 0x5928) = 1;
    }
    else {
      if (iVar10 != 2) {
        iVar10 = 0;
      }
      *(int *)(param_1 + 0x5928) = iVar10;
    }
    if (2 < RTDebugLevel) {
      printk("%s=%ld\n",local_6c,*(undefined4 *)(param_1 + 0x5928));
    }
  }
  snprintf((char *)local_6c,0x20,"AccessControlList%d",0)   //possible issue identified - semgrep
  iVar10 = RTMPGetKeyParameter(local_6c,pcVar17,0x800,param_2,1);
  if (iVar10 != 0) {
    pcVar11 = (char *)rstrtok(pcVar17,&_LC37)   //possible issue identified - semgrep
    while (pcVar11 != (char *)0x0) {
      sVar15 = strlen(pcVar11);
      if (sVar15 == 0x11) {
        pcVar17 = &local_7c;
        if (0x40 < *(uint *)(param_1 + 0x592c)) {
          printk("<4>/home/eric/release/dir600b5/progs.priv/rt2860v2/build/rt2860v2_ap/../rt2860v2/common/cmm_profile.c:%d assert pAd->ApCfg.MBSSID[idx].AccessControlList.Num <= MAX_NUM_OF_ACL_LISTfailed\n"
                 ,0x41c);
        }
        do {
          pcVar16 = pcVar17 + 1;
          AtoH(pcVar11,pcVar17,1);
          pcVar11 = pcVar11 + 3;
          pcVar17 = pcVar16;
        } while (pcVar16 != acStack_76);
        iVar10 = *(int *)(param_1 + 0x592c);
        if (iVar10 == 0x40) {
          if (1 < RTDebugLevel) {
            printk("The AccessControlList is full, and no more entry can join the list!\n");
          }
          if (1 < RTDebugLevel) {
            printk("The last entry of ACL is %02x:%02x:%02x:%02x:%02x:%02x\n",local_7c,local_7b,
                   local_7a,local_79,local_78,local_77);
          }
          break;
        }
        *(int *)(param_1 + 0x592c) = iVar10 + 1;
        memmove((void *)(param_1 + (iVar10 + 0xb25) * 8 + 8),&local_7c,6)   //possible issue identified - semgrep
      }
      pcVar11 = (char *)rstrtok(0,&_LC37)   //possible issue identified - semgrep
    }
    if (2 < RTDebugLevel) {
      printk("%s=Get %ld Mac Address\n",local_6c,*(undefined4 *)(param_1 + 0x592c));
    }
  }
  pcVar11 = local_84;
  iVar10 = RTMPGetKeyParameter("own_ip_addr",local_84,0x20,param_2,1);
  if (iVar10 != 0) {
    Set_OwnIPAddr_Proc(param_1,pcVar11);
  }
  iVar10 = RTMPGetKeyParameter("session_timeout_interval",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    uVar12 = simple_strtol(pcVar11,0,10);
    *(undefined4 *)(param_1 + 0x1664c) = uVar12;
    if (2 < RTDebugLevel) {
      printk("session_timeout_interval=%d\n");
    }
  }
  iVar10 = RTMPGetKeyParameter("quiet_interval",pcVar11,0x20,param_2,1);
  if (iVar10 != 0) {
    uVar12 = simple_strtol(pcVar11,0,10);
    *(undefined4 *)(param_1 + 0x16650) = uVar12;
    if (2 < RTDebugLevel) {
      printk("quiet_interval=%d\n");
    }
  }
  iVar10 = RTMPGetKeyParameter("EAPifname",pcVar11,0x100,param_2,1);
  if (iVar10 != 0) {
    Set_EAPIfName_Proc(param_1,pcVar11);
  }
  iVar10 = RTMPGetKeyParameter("PreAuthifname",pcVar11,0x100,param_2,1);
  if (iVar10 != 0) {
    Set_PreAuthIfName_Proc(param_1,pcVar11);
  }
  iVar10 = RTMPGetKeyParameter("PreAuth",pcVar11,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x52b6);
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar18 = iVar18 + 1) {
      iVar10 = simple_strtol(iVar10,0,10);
      if (iVar10 == 0) {
        *puVar19 = 0;
      }
      else {
        *puVar19 = 1;
      }
      if (2 < RTDebugLevel) {
        printk("I/F(ra%d) PreAuth=%d\n",iVar18,*puVar19);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      puVar19 = puVar19 + 0x1140;
    }
  }
  iVar10 = RTMPGetKeyParameter("IEEE8021X",pcVar11,10,param_2,1);
  if (iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    puVar19 = (undefined1 *)(param_1 + 0x52b5);
    for (iVar18 = 0; (iVar10 != 0 && (iVar18 < (int)(uint)*(byte *)(param_1 + 0x51aa)));
        iVar18 = iVar18 + 1) {
      iVar10 = simple_strtol(iVar10,0,10);
      if (iVar10 == 0) {
        *puVar19 = 0;
      }
      else {
        *puVar19 = 1;
      }
      if (2 < RTDebugLevel) {
        printk("IF(ra%d), IEEE8021X=%d\n",iVar18,*puVar19);
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      puVar19 = puVar19 + 0x1140;
    }
  }
  local_88[0] = 0;
  while (iVar10 = RTMPGetKeyParameterWithOffset("RADIUS_Server",pcVar11,local_88,0x100,param_2,1),
        iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    bVar25 = false;
    while ((iVar10 != 0 && (!bVar25))) {
      iVar18 = rtinet_aton(iVar10,&local_80);
      if ((iVar18 != 0) && (*(byte *)(param_1 + 0x5b33) < 2)) {
        iVar18 = (uint)*(byte *)(param_1 + 0x5b33) * 0x49 + param_1;
        *(undefined4 *)(iVar18 + 0x5b34) = local_80;
        cVar3 = *(char *)(param_1 + 0x5b33)   //possible issue identified - semgrep
        *(char *)(param_1 + 0x5b33) = cVar3 + '\x01';
        if (2 < RTDebugLevel) {
          printk("IF(ra%d), radius_ip(seq-%d)=%s(%x)\n",0,cVar3 + '\x01',iVar10,
                 *(undefined4 *)(iVar18 + 0x5b34));
        }
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      bVar25 = true;
    }
  }
  local_88[0] = 0;
  memset(local_6c,0,0x40)   //possible issue identified - semgrep
  while (iVar10 = RTMPGetKeyParameterWithOffset("RADIUS_Port",pcVar11,local_88,0x80,param_2,1),
        iVar10 != 0) {
    iVar10 = rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    bVar25 = false;
    while ((iVar18 = local_6c[0], iVar10 != 0 && (!bVar25))) {
      if (local_6c[0] < (int)(uint)*(byte *)(param_1 + 0x5b33)) {
        uVar12 = simple_strtol(iVar10,0,10);
        iVar10 = iVar18 * 0x49 + param_1;
        *(undefined4 *)(iVar10 + 0x5b38) = uVar12;
        local_6c[0] = local_6c[0] + 1;
        if (2 < RTDebugLevel) {
          printk("IF(ra%d), radius_port(seq-%d)=%d\n",0,local_6c[0],*(undefined4 *)(iVar10 + 0x5b38)
                );
        }
      }
      iVar10 = rstrtok(0,&_LC37)   //possible issue identified - semgrep
      bVar25 = true;
    }
  }
  local_88[0] = 0;
  memset(local_6c,0,0x40)   //possible issue identified - semgrep
  bVar25 = false;
  while( true ) {
    iVar10 = RTMPGetKeyParameterWithOffset("RADIUS_Key",pcVar11,local_88,0x280,param_2,0);
    puVar19 = (undefined1 *)(param_1 + 0x5bd6);
    if (iVar10 == 0) break;
    sVar15 = strlen(pcVar11);
    if (sVar15 != 0) {
      bVar25 = true;
    }
    pcVar17 = (char *)rstrtok(pcVar11,&_LC37)   //possible issue identified - semgrep
    bVar2 = false;
    while ((pcVar17 != (char *)0x0 && (!bVar2))) {
      sVar15 = strlen(pcVar17);
      iVar10 = local_6c[0];
      if ((sVar15 != 0) && (local_6c[0] < (int)(uint)*(byte *)(param_1 + 0x5b33))) {
        sVar15 = strlen(pcVar17);
        iVar10 = param_1 + iVar10 * 0x49;
        *(char *)(iVar10 + 0x5b7c) = (char)sVar15;
        sVar15 = strlen(pcVar17);
        memmove((void *)(iVar10 + 0x5b3c),pcVar17,sVar15)   //possible issue identified - semgrep
        local_6c[0] = local_6c[0] + 1;
        if (2 < RTDebugLevel) {
          printk("IF(ra%d), radius_key(seq-%d)=%s, len=%d\n",0,local_6c[0],(void *)(iVar10 + 0x5b3c)
                 ,*(undefined1 *)(iVar10 + 0x5b7c));
        }
      }
      pcVar17 = (char *)rstrtok(0,&_LC37)   //possible issue identified - semgrep
      bVar2 = true;
    }
  }
  iVar10 = 0;
  while (iVar10 < (int)(uint)*(byte *)(param_1 + 0x51aa)) {
    snprintf(&local_7c,0x10,"NasId%d",iVar10 + 1)   //possible issue identified - semgrep
    iVar18 = RTMPGetKeyParameter(&local_7c,pcVar11,0x21,param_2,0);
    if ((iVar18 != 0) && (sVar15 = strlen(pcVar11), sVar15 != 0)) {
      sVar15 = strlen(pcVar11);
      *puVar19 = (char)sVar15;
      pvVar26 = (void *)(iVar10 * 0x1140 + param_1 + 0x5bc6);
      sVar15 = strlen(pcVar11);
      memmove(pvVar26,pcVar11,sVar15)   //possible issue identified - semgrep
      if (2 < RTDebugLevel) {
        printk("IF-ra%d NAS-ID=%s, len=%d\n",iVar10,pvVar26,*puVar19);
      }
    }
    puVar19 = puVar19 + 0x1140;
    iVar10 = iVar10 + 1;
  }
  if (!bVar25) {
    snprintf(&local_7c,0x10,"RADIUS_Key%d",1)   //possible issue identified - semgrep
    local_88[0] = 0;
    puVar19 = (undefined1 *)(param_1 + 0x5b7c);
    iVar10 = 0;
    while (iVar18 = RTMPGetKeyParameterWithOffset(&local_7c,pcVar11,local_88,0x80,param_2,0),
          iVar18 != 0) {
      sVar15 = strlen(pcVar11);
      if ((sVar15 != 0) && (iVar10 < (int)(uint)*(byte *)(param_1 + 0x5b33))) {
        sVar15 = strlen(pcVar11);
        *puVar19 = (char)sVar15;
        pvVar26 = (void *)(iVar10 * 0x49 + param_1 + 0x5b3c);
        sVar15 = strlen(pcVar11);
        memmove(pvVar26,pcVar11,sVar15)   //possible issue identified - semgrep
        if (2 < RTDebugLevel) {
          printk("IF(ra%d), update radius_key(seq-%d)=%s, len=%d\n",0,iVar10 + 1,pvVar26,*puVar19);
        }
        iVar10 = iVar10 + 1;
        puVar19 = puVar19 + 0x49;
      }
    }
  }
  HTParametersHook(param_1,local_84,param_2);
  iVar10 = RTMPGetKeyParameter("EntryLifeCheck",local_84,0x100,param_2,1);
  if (iVar10 != 0) {
    iVar10 = simple_strtol(local_84,0,10);
    if ((0xffff < iVar10) || (iVar10 == 0)) {
      iVar10 = 0x400;
    }
    *(int *)(param_1 + 0x168c4) = iVar10;
    if (RTDebugLevel != 0) {
      printk("EntryLifeCheck=%ld\n",*(undefined4 *)(param_1 + 0x168c4));
    }
  }
  os_free_mem(0,local_84);
  return 0;
}