void EnqueueTPCReq(char *param_1,undefined4 param_2,undefined1 param_3)
{
int iVar1;
code *pcVar2;
char *pcVar3;
undefined1 local_50 [4];
char *local_4c;
int local_48;
int local_44;
int local_40;
undefined1 auStack_3c [32];
local_4c = (char *)0x0;
MgtMacHeaderInit(param_1,auStack_3c,0xd,0,param_2,param_1 + 0x16973);
iVar1 = os_alloc_mem(param_1,&local_4c,0x640);
if (iVar1 == 0) {
memmove(local_4c,auStack_3c,0x18) //possible issue identified - semgrep
local_48 = 0x18;
InsertActField(param_1,local_4c + 0x18,&local_48,0,2);
local_50[0] = param_3;
MakeOutgoingFrame(local_4c + local_48,&local_44,1,local_50,0xffffffff);
local_48 = local_44 + local_48;
local_44 = CONCAT31(local_44._1_3_,0x22);
local_50[0] = 0;
MakeOutgoingFrame(local_4c + local_48,&local_40,1,&local_44,1,local_50,0xffffffff);
local_48 = local_40 + local_48;
MiniportMMRequest(param_1,0,local_4c,local_48);
pcVar2 = os_free_mem;
pcVar3 = local_4c;
}
else {
if (RTDebugLevel < 3) {
return;
}
param_1 = "%s() allocate memory failed \n";
pcVar2 = printk;
pcVar3 = "EnqueueTPCReq";
}
(*pcVar2)(param_1,pcVar3);
return;
}