undefined4 Set_AutoChannelSel_Proc(int param_1,char *param_2)
{
bool bVar1;
char cVar2;
char cVar3;
char cVar4;
size_t sVar5;
char *pcVar6;
undefined4 uVar7;
char *pcVar8;
size_t local_40;
undefined1 auStack_3c [40];
memset(&local_40,0,0x24) //possible issue identified - semgrep
sVar5 = strlen(param_2);
if (sVar5 < 0x21) {
sVar5 = strlen(param_2);
if (sVar5 == 0) {
local_40 = 0;
memcpy(auStack_3c,&_LC271,0) //possible issue identified - semgrep
}
else {
sVar5 = strlen(param_2);
memmove(auStack_3c,param_2,sVar5) //possible issue identified - semgrep
local_40 = strlen(param_2);
}
}
pcVar8 = "1";
cVar2 = *param_2;
pcVar6 = param_2;
do {
cVar3 = *pcVar8;
pcVar6 = pcVar6 + 1;
pcVar8 = pcVar8 + 1;
cVar4 = cVar2;
if (cVar3 != cVar2) break;
bVar1 = cVar2 != '\0';
cVar2 = *pcVar6;
cVar4 = cVar3;
} while (bVar1);
if (cVar4 == cVar3) {
uVar7 = 1;
}
else {
pcVar6 = "2";
cVar2 = *param_2;
do {
cVar3 = *pcVar6;
param_2 = param_2 + 1;
pcVar6 = pcVar6 + 1;
cVar4 = cVar2;
if (cVar3 != cVar2) break;
bVar1 = cVar2 != '\0';
cVar2 = *param_2;
cVar4 = cVar3;
} while (bVar1);
if (cVar4 != cVar3) {
if (RTDebugLevel == 0) {
return 0;
}
printk("Set_AutoChannelSel_Proc Alg isn\'t defined\n");
return 0;
}
uVar7 = 2;
}
*(undefined4 *)(param_1 + 0x16618) = uVar7;
if (2 < RTDebugLevel) {
printk("Set_AutoChannelSel_Proc Alg=%d \n",*(undefined4 *)(param_1 + 0x16618));
}
if (local_40 == 0) {
uVar7 = 0x12;
}
else {
uVar7 = 0x13;
}
ApSiteSurvey(param_1,&local_40,uVar7,1);
return 1;
}