void WPAStart2WayGroupHS(int param_1,int *param_2)

{
  undefined1 uVar1;
  void *pvVar2;
  char cVar3;
  int iVar4;
  uint uVar5;
  uint uVar6;
  uint uVar7;
  void *local_40;
  undefined1 auStack_3c [8];
  undefined1 auStack_34 [6];
  undefined1 auStack_2e [6];
  undefined1 auStack_28 [8];
  
  if (2 < RTDebugLevel) {
    printk("===> WPAStart2WayGroupHS\n");
  }
  if (((param_2 != (int *)0x0) && (*param_2 == 1)) &&
     (uVar6 = (uint)*(byte *)((int)param_2 + 0x31), uVar6 < *(byte *)(param_1 + 0x51aa))) {
    iVar4 = uVar6 * 0x1140 + param_1;
    uVar1 = *(undefined1 *)(iVar4 + 0x5240);
    uVar7 = *(uint *)(iVar4 + 0x51e4);
    RTMPGetTxTscFromAsic(param_1,uVar6,auStack_3c);
    os_alloc_mem(0,&local_40,0x5dc);
    pvVar2 = local_40;
    if (local_40 == (void *)0x0) {
      if (RTDebugLevel != 0) {
        printk("!!!%s : no memory!!!\n","WPAStart2WayGroupHS");
      }
    }
    else {
      memset(local_40,0,0x5dc)   //possible issue identified - semgrep
      uVar5 = 7;
      do {
        uVar5 = uVar5 & 0xff;
        cVar3 = *(char *)((int)param_2 + uVar5 + 0x172) + '\x01'   //possible issue identified - semgrep
        *(char *)((int)param_2 + uVar5 + 0x172) = cVar3;
        if (uVar5 == 0) break;
        uVar5 = uVar5 - 1;
      } while (cVar3 == '\0');
      iVar4 = param_1 + uVar6 * 0x1140;
      ConstructEapolMsg(param_2,uVar7 & 0xff,5,uVar1,iVar4 + 0x52b7,auStack_3c,iVar4 + 0x5295,0,0,
                        pvVar2);
      memmove(auStack_34,param_2 + 0x96,6)   //possible issue identified - semgrep
      memmove(auStack_2e,(void *)(param_1 + uVar6 * 0x1140 + 0x51ac),6)   //possible issue identified - semgrep
      memmove(auStack_28,&EAPOL,2)   //possible issue identified - semgrep
      RTMPToWirelessSta(param_1,param_2,auStack_34,0xe,pvVar2,
                        CONCAT11(*(undefined1 *)((int)pvVar2 + 2),*(undefined1 *)((int)pvVar2 + 3))
                        + 4,0);
      os_free_mem(0,local_40);
      if (2 < RTDebugLevel) {
        printk("<=== WPAStart2WayGroupHS : send out Group Message 1 \n");
      }
    }
  }
  return;
}