void RTMPIoctlStatistics(int param_1,uint *param_2)
{
size_t sVar1;
char *pcVar2;
uint uVar3;
char *pcVar4;
int unaff_gp;
char *local_28 [3];
os_alloc_mem(param_1,local_28,0x800);
if (local_28[0] == (char *)0x0) {
return;
}
memset(local_28[0],0,0x640) //possible issue identified - semgrep
sprintf(local_28[0],"\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
if (*(char *)(param_1 + 0x76a0c) == -0x80) {
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
pcVar4 = "Tx success = %ld\n";
}
else {
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
pcVar4 = "Tx success = %ld\n";
}
sprintf(pcVar2 + sVar1,pcVar4) //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"Tx retry count = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"Tx fail to Rcv ACK after retry = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"RTS Success Rcv CTS = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"RTS Fail Rcv CTS = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"Rx success = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"Rx with CRC = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"Rx drop due to out of resource = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"Rx duplicate frame = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"False CCA (one second) = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
if (*(char *)(param_1 + 0x76a0c) == -0x80) {
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"RSSI-A = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"RSSI-B (if available) = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
}
else {
if (*(char *)(param_1 + 0x76a12) != '\0') {
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
pcVar2 = pcVar2 + sVar1;
pcVar4 = "RSSI = %ld\n";
goto LAB_00086a4c;
}
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"RSSI-A = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
sprintf(pcVar2 + sVar1,"RSSI-B (if available) = %ld\n") //possible issue identified - semgrep
pcVar2 = local_28[0];
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
}
pcVar2 = pcVar2 + sVar1;
pcVar4 = "RSSI-C (if available) = %ld\n\n";
LAB_00086a4c:
sprintf(pcVar2,pcVar4) //possible issue identified - semgrep
sVar1 = strlen(local_28[0]) //possible issue identified - semgrep
uVar3 = *param_2;
*(short *)(param_2 + 1) = (short)sVar1;
if ((((sVar1 & 0xffff) + uVar3 | uVar3 | sVar1 & 0xffff) & *(uint *)(unaff_gp + 0x18)) == 0) {
__copy_user(uVar3,local_28[0]);
}
os_free_mem(0,local_28[0]);
if (2 < RTDebugLevel) {
printk("<==RTMPIoctlStatistics\n");
}
return;
}