undefined4 Set_MeasureReq_Proc(int param_1,char *param_2)

{
  byte bVar1;
  int iVar2;
  char *pcVar3;
  uint uVar4;
  uint uVar5;
  char *local_res4 [3];
  void *local_60;
  int local_5c;
  int local_58;
  byte local_54 [9];
  uint3 uStack_4b;
  undefined1 auStack_48 [24];
  undefined4 local_30;
  
  local_res4[0] = param_2;
  local_30 = RandomByte();
  local_60 = (void *)0x0;
  iVar2 = os_alloc_mem(param_1,&local_60,0x640);
  if (iVar2 == 0) {
    uVar4 = 1;
    iVar2 = 1;
    uVar5 = 0;
    bVar1 = 1;
LAB_00047240:
    do {
      pcVar3 = strsep(local_res4,"-");
      if (pcVar3 == (char *)0x0) {
        if (2 < RTDebugLevel) {
          printk("%s::Aid = %d, MeasureReqType=%d MeasureCh=%d\n","Set_MeasureReq_Proc",uVar4,uVar5,
                 bVar1);
        }
        if (uVar4 - 1 < 0x1f) {
          MeasureReqInsert(param_1,local_30);
          MgtMacHeaderInit(param_1,auStack_48,0xd,0,param_1 + uVar4 * 0xa20 + 0x5d190,
                           param_1 + 0x16973);
          memmove(local_60,auStack_48,0x18)   //possible issue identified - semgrep
          local_5c = 0x18;
          MakeMeasurementReqFrame(param_1,local_60,&local_5c,3,5,0,local_30,2,uVar5,1);
          local_54[1] = 0;
          local_54[2] = 0;
          local_54[3] = 0;
          local_54[4] = 0;
          uStack_4b = uStack_4b & 0xff0000 | 2000;
          local_54[5] = 0;
          local_54[6] = 0;
          local_54[7] = 0;
          local_54[8] = 0;
          local_54[0] = bVar1;
          MakeOutgoingFrame((int)local_60 + local_5c,&local_58,0xb,local_54,0xffffffff);
          local_5c = local_58 + local_5c;
          MiniportMMRequest(param_1,0,local_60,local_5c);
          goto LAB_00047428;
        }
        if (RTDebugLevel == 0) goto LAB_00047428;
        pcVar3 = "%s: unknow sta of Aid(%d)\n";
        uVar5 = uVar4;
        goto LAB_000472cc;
      }
      if (iVar2 != 2) {
        if (iVar2 == 3) {
          bVar1 = simple_strtol(pcVar3,0,0x10);
        }
        else {
          if (iVar2 != 1) {
            iVar2 = iVar2 + 1;
            goto LAB_00047240;
          }
          uVar4 = simple_strtol(pcVar3,0,0x10);
          uVar4 = uVar4 & 0xff;
        }
        iVar2 = iVar2 + 1;
        goto LAB_00047240;
      }
      uVar5 = simple_strtol(pcVar3,0,0x10);
      uVar5 = uVar5 & 0xff;
      iVar2 = 3;
    } while (uVar5 < 4);
    if (RTDebugLevel != 0) {
      pcVar3 = "%s: unknow MeasureReqType(%d)\n";
LAB_000472cc:
      printk(pcVar3,"Set_MeasureReq_Proc",uVar5);
    }
  }
  else if (2 < RTDebugLevel) {
    printk("%s() allocate memory failed \n","Set_MeasureReq_Proc");
  }
LAB_00047428:
  os_free_mem(param_1,local_60);
  return 1;
}