void CalNoiseLevel(int param_1,byte param_2,int *param_3)
{
bool bVar1;
byte bVar2;
code *pcVar3;
char cVar4;
undefined1 uVar5;
uint uVar6;
uint uVar7;
int iVar8;
int iVar9;
int *piVar10;
uint uVar11;
uint uVar12;
uint uVar13;
ushort local_50;
undefined2 local_4e [3];
uint local_48;
uint local_44;
uint local_40;
uint local_3c;
uint local_38;
int local_34;
int local_30;
int local_2c;
local_48 = (uint)*(byte *)(param_1 + 0x76a38);
local_50 = 0;
local_4e[0] = 0;
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
while( true ) {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb4200;
}
iVar8 = 1;
while( true ) {
uVar6 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if (((uVar6 & 0x20000) == 0) || (iVar8 == 100)) break;
iVar8 = iVar8 + 1;
}
if ((uVar6 & 0x2ff00) == 0x4200) {
local_38 = uVar6 & 0xff;
goto LAB_000acbb4;
}
}
iVar9 = iVar9 + 1;
if (iVar9 == 100) break;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
local_38 = 0;
LAB_000acbb4:
if ((int)(uVar6 << 0xe) < 0) {
if (RTDebugLevel == 0) {
bVar2 = *(byte *)(param_1 + 0x4b0b);
}
else {
printk("BBP read R%d fail\n",0x42);
bVar2 = *(byte *)(param_1 + 0x4b0b);
}
local_38 = (uint)bVar2;
}
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
while( true ) {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb4500;
}
iVar8 = 1;
while( true ) {
uVar6 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if (((uVar6 & 0x20000) == 0) || (iVar8 == 100)) break;
iVar8 = iVar8 + 1;
}
if ((uVar6 & 0x2ff00) == 0x4500) {
local_3c = uVar6 & 0xff;
goto LAB_000accac;
}
}
iVar9 = iVar9 + 1;
if (iVar9 == 100) break;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
local_3c = 0;
LAB_000accac:
if ((int)(uVar6 << 0xe) < 0) {
if (RTDebugLevel == 0) {
bVar2 = *(byte *)(param_1 + 0x4b0e);
}
else {
printk("BBP read R%d fail\n",0x45);
bVar2 = *(byte *)(param_1 + 0x4b0e);
}
local_3c = (uint)bVar2;
}
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
while( true ) {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb4600;
}
iVar8 = 1;
while( true ) {
uVar6 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if (((uVar6 & 0x20000) == 0) || (iVar8 == 100)) break;
iVar8 = iVar8 + 1;
}
if ((uVar6 & 0x2ff00) == 0x4600) {
local_40 = uVar6 & 0xff;
goto LAB_000acda4;
}
}
iVar9 = iVar9 + 1;
if (iVar9 == 100) break;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
local_40 = 0;
LAB_000acda4:
if ((int)(uVar6 << 0xe) < 0) {
if (RTDebugLevel == 0) {
bVar2 = *(byte *)(param_1 + 0x4b0f);
}
else {
printk("BBP read R%d fail\n",0x46);
bVar2 = *(byte *)(param_1 + 0x4b0f);
}
local_40 = (uint)bVar2;
pcVar3 = *(code **)(param_1 + 0x10);
}
else {
pcVar3 = *(code **)(param_1 + 0x10);
}
(*pcVar3)(param_1,0x44,&local_50);
if (param_2 < 0xf) {
local_44 = local_50 & 0xff;
(**(code **)(param_1 + 0x10))(param_1,0x46,local_4e);
local_30 = (int)(char)((ushort)local_4e[0] >> 8);
local_2c = (int)(char)local_4e[0];
(**(code **)(param_1 + 0x10))(param_1,0x48,local_4e);
}
else {
local_44 = (uint)(local_50 >> 8);
(**(code **)(param_1 + 0x10))(param_1,0x4a,local_4e);
local_30 = (int)(char)((ushort)local_4e[0] >> 8);
local_2c = (int)(char)local_4e[0];
(**(code **)(param_1 + 0x10))(param_1,0x4c,local_4e);
}
local_34 = (int)(char)local_4e[0];
*(byte *)(param_1 + 0x76a38) = param_2;
ATEAsicSwitchChannel(param_1);
RtmpOsMsDelay(5);
uVar6 = *(uint *)(param_1 + 0x4a94) & 0xffff0000;
if ((((uVar6 == 0x28830000) || (uVar6 == 0x38830000)) || (uVar6 == 0x33520000)) ||
(uVar13 = 0, uVar6 == 0x53500000)) {
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
while( true ) {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb1b00;
}
iVar8 = 1;
while( true ) {
uVar6 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if (((uVar6 & 0x20000) == 0) || (iVar8 == 100)) break;
iVar8 = iVar8 + 1;
}
if ((uVar6 & 0x2ff00) == 0x1b00) {
uVar13 = uVar6 & 0xff;
goto LAB_000acfb8;
}
}
iVar9 = iVar9 + 1;
if (iVar9 == 100) break;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
uVar13 = 0;
LAB_000acfb8:
if ((int)(uVar6 << 0xe) < 0) {
if (RTDebugLevel == 0) {
bVar2 = *(byte *)(param_1 + 0x4ae4);
}
else {
printk("BBP read R%d fail\n",0x1b);
bVar2 = *(byte *)(param_1 + 0x4ae4);
}
uVar13 = (uint)bVar2;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
uVar13 = uVar13 & 0x9f;
iVar9 = 0;
do {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(uint *)(*(int *)(param_1 + 0xdc) + 0x101c) = uVar13 | 0xa1b00;
}
*(char *)(param_1 + 0x4ae4) = (char)uVar13;
if (iVar9 != 100) goto LAB_000ad098;
break;
}
iVar9 = iVar9 + 1;
} while (iVar9 != 100);
if (RTDebugLevel == 0) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("BBP write R%d fail\n",0x1b);
LAB_000ad098:
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
iVar9 = 0;
do {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xa4210;
}
*(undefined1 *)(param_1 + 0x4b0b) = 0x10;
if (iVar9 != 100) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
goto LAB_000ad14c;
}
break;
}
iVar9 = iVar9 + 1;
} while (iVar9 != 100);
if (RTDebugLevel != 0) {
printk("BBP write R%d fail\n",0x42);
goto LAB_000ad148;
}
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
LAB_000ad148:
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
LAB_000ad14c:
iVar9 = 0;
do {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xa4540;
}
*(undefined1 *)(param_1 + 0x4b0e) = 0x40;
if (iVar9 != 100) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
goto LAB_000ad1fc;
}
break;
}
iVar9 = iVar9 + 1;
} while (iVar9 != 100);
if (RTDebugLevel == 0) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("BBP write R%d fail\n",0x45);
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
LAB_000ad1fc:
iVar9 = 0;
do {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xa4640;
}
*(undefined1 *)(param_1 + 0x4b0f) = 0x40;
if (iVar9 != 100) goto LAB_000ad2ac;
break;
}
iVar9 = iVar9 + 1;
} while (iVar9 != 100);
if (RTDebugLevel != 0) {
printk("BBP write R%d fail\n",0x46);
}
LAB_000ad2ac:
RtmpOsMsDelay(5);
*(undefined1 *)(param_1 + 0x76a53) = 1;
Set_ATE_Proc(param_1,"RXFRAME");
RtmpOsMsDelay(5);
uVar12 = 0;
uVar11 = 0;
uVar6 = 0;
piVar10 = param_3;
do {
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
LAB_000ad30c:
uVar7 = 0;
if (cVar4 == '\0') {
uVar7 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar7 & 0x20000) != 0) {
LAB_000ad3a8:
iVar9 = iVar9 + 1;
if (iVar9 == 100) goto LAB_000ad3b0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
goto LAB_000ad30c;
}
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb3200;
}
iVar8 = 1;
do {
uVar7 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar7 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
} while (((uVar7 & 0x20000) != 0) && (bVar1 = iVar8 != 100, iVar8 = iVar8 + 1, bVar1));
if ((uVar7 & 0x2ff00) != 0x3200) goto LAB_000ad3a8;
uVar12 = uVar7 & 0xff;
LAB_000ad3b0:
if ((uVar7 & 0x20000) != 0) {
if (RTDebugLevel == 0) {
uVar12 = (uint)*(byte *)(param_1 + 0x4afb);
}
else {
printk("BBP read R%d fail\n",0x32);
uVar12 = (uint)*(byte *)(param_1 + 0x4afb);
}
}
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
LAB_000ad3f8:
uVar7 = 0;
if (cVar4 == '\0') {
uVar7 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar7 & 0x20000) != 0) {
LAB_000ad48c:
iVar9 = iVar9 + 1;
if (iVar9 == 100) goto LAB_000ad494;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
goto LAB_000ad3f8;
}
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb3300;
}
iVar8 = 1;
do {
uVar7 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar7 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
} while (((uVar7 & 0x20000) != 0) && (bVar1 = iVar8 != 100, iVar8 = iVar8 + 1, bVar1));
if ((uVar7 & 0x2ff00) != 0x3300) goto LAB_000ad48c;
uVar11 = uVar7 & 0xff;
LAB_000ad494:
if ((uVar7 & 0x20000) != 0) {
if (RTDebugLevel == 0) {
uVar11 = (uint)*(byte *)(param_1 + 0x4afc);
}
else {
printk("BBP read R%d fail\n",0x33);
uVar11 = (uint)*(byte *)(param_1 + 0x4afc);
}
}
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
LAB_000ad4dc:
uVar7 = 0;
if (cVar4 == '\0') {
uVar7 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar7 & 0x20000) != 0) {
LAB_000ad570:
iVar9 = iVar9 + 1;
if (iVar9 == 100) goto LAB_000ad578;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
goto LAB_000ad4dc;
}
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb3400;
}
iVar8 = 1;
do {
uVar7 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar7 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
} while (((uVar7 & 0x20000) != 0) && (bVar1 = iVar8 != 100, iVar8 = iVar8 + 1, bVar1));
if ((uVar7 & 0x2ff00) != 0x3400) goto LAB_000ad570;
uVar6 = uVar7 & 0xff;
LAB_000ad578:
if ((uVar7 & 0x20000) != 0) {
if (RTDebugLevel == 0) {
bVar2 = *(byte *)(param_1 + 0x4afd);
}
else {
printk("BBP read R%d fail\n",0x34);
bVar2 = *(byte *)(param_1 + 0x4afd);
}
uVar6 = (uint)bVar2;
}
RtmpOsMsDelay(10);
iVar9 = -100;
if (uVar12 != 0) {
iVar9 = ((-0xc - uVar12) - local_44) - local_2c;
}
*piVar10 = iVar9;
if ((*(uint *)(param_1 + 0x4bf4) & 0xf) < 2) {
uVar7 = *(uint *)(param_1 + 0x4bf4);
}
else {
iVar9 = -100;
if (uVar11 != 0) {
iVar9 = ((-0xc - uVar11) - local_44) - local_30;
}
piVar10[10] = iVar9;
uVar7 = *(uint *)(param_1 + 0x4bf4);
}
if (2 < (uVar7 & 0xf)) {
iVar9 = -100;
if (uVar6 != 0) {
iVar9 = ((-0xc - uVar6) - local_44) - local_34;
}
piVar10[0x14] = iVar9;
}
piVar10 = piVar10 + 1;
} while (piVar10 != param_3 + 10);
Set_ATE_Proc(param_1,&_LC189);
RtmpOsMsDelay(5);
BubbleSort(10,param_3);
if (1 < (*(uint *)(param_1 + 0x4bf4) & 0xf)) {
BubbleSort(10,piVar10);
}
uVar5 = (undefined1)local_48;
if (2 < (*(uint *)(param_1 + 0x4bf4) & 0xf)) {
BubbleSort(10,param_3 + 0x14);
uVar5 = (undefined1)local_48;
}
*(undefined1 *)(param_1 + 0x76a38) = uVar5;
ATEAsicSwitchChannel(param_1);
uVar6 = *(uint *)(param_1 + 0x4a94) & 0xffff0000;
if ((((uVar6 != 0x28830000) && (uVar6 != 0x38830000)) && (uVar6 != 0x33520000)) &&
(uVar6 != 0x53500000)) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
LAB_000ad980:
iVar9 = 0;
do {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(uint *)(*(int *)(param_1 + 0xdc) + 0x101c) = local_3c & 0xff | 0xa4500;
}
*(char *)(param_1 + 0x4b0e) = (char)local_3c;
if (iVar9 != 100) goto LAB_000ada28;
break;
}
iVar9 = iVar9 + 1;
} while (iVar9 != 100);
if (RTDebugLevel == 0) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("BBP write R%d fail\n",0x45);
LAB_000ada28:
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
iVar9 = 0;
while( true ) {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) break;
iVar9 = iVar9 + 1;
if (iVar9 == 100) {
LAB_000adab0:
if (RTDebugLevel != 0) {
printk("BBP write R%d fail\n",0x46);
}
return;
}
}
if (cVar4 == '\0') {
*(uint *)(*(int *)(param_1 + 0xdc) + 0x101c) = local_40 & 0xff | 0xa4600;
}
*(char *)(param_1 + 0x4b0f) = (char)local_40;
if (iVar9 != 100) {
return;
}
goto LAB_000adab0;
}
iVar9 = 0;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
LAB_000ad760:
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(undefined4 *)(*(int *)(param_1 + 0xdc) + 0x101c) = 0xb1b00;
}
iVar8 = 1;
while( true ) {
uVar6 = 0;
if (*(char *)(param_1 + 0xec) == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if (((uVar6 & 0x20000) == 0) || (iVar8 == 100)) break;
iVar8 = iVar8 + 1;
}
if ((uVar6 & 0x2ff00) == 0x1b00) {
uVar13 = uVar6 & 0xff;
LAB_000ad7f4:
if ((int)(uVar6 << 0xe) < 0) {
if (RTDebugLevel == 0) {
bVar2 = *(byte *)(param_1 + 0x4ae4);
}
else {
printk("BBP read R%d fail\n",0x1b);
bVar2 = *(byte *)(param_1 + 0x4ae4);
}
uVar13 = (uint)bVar2;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
iVar9 = 0;
do {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(uint *)(*(int *)(param_1 + 0xdc) + 0x101c) = uVar13 & 0x9f | 0xa1b00;
}
*(char *)(param_1 + 0x4ae4) = (char)(uVar13 & 0x9f);
if (iVar9 != 100) goto LAB_000ad8d0;
break;
}
iVar9 = iVar9 + 1;
} while (iVar9 != 100);
if (RTDebugLevel == 0) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("BBP write R%d fail\n",0x1b);
LAB_000ad8d0:
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
iVar9 = 0;
do {
uVar6 = 0;
if (cVar4 == '\0') {
uVar6 = *(uint *)(*(int *)(param_1 + 0xdc) + 0x101c);
}
if ((uVar6 & 0x20000) == 0) {
if (cVar4 == '\0') {
*(uint *)(*(int *)(param_1 + 0xdc) + 0x101c) = local_38 & 0xff | 0xa4200;
}
*(char *)(param_1 + 0x4b0b) = (char)local_38;
if (iVar9 != 100) goto LAB_000ad97c;
break;
}
iVar9 = iVar9 + 1;
} while (iVar9 != 100);
if (RTDebugLevel == 0) {
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("BBP write R%d fail\n",0x42);
LAB_000ad97c:
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
goto LAB_000ad980;
}
}
iVar9 = iVar9 + 1;
if (iVar9 == 100) goto LAB_000ad7f4;
cVar4 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
goto LAB_000ad760;
}