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;
}