VslFinishStartSecureProcessor

NTSTATUS __stdcall VslFinishStartSecureProcessor(UINT64 ProcessorNumber){
  ULONG v1; 
  PHYSICAL_ADDRESS *PoolWithTag; 
  __int64 v4; 
  NTSTATUS v5; 
  INT64 v6[10]; 
  INT64 result[14]; 
  v1 = ProcessorNumber;
  memset((INT64)result, 0i64);
  memset((INT64)v6, 0i64);
  PoolWithTag = (PHYSICAL_ADDRESS *)ExAllocatePoolWithTag(NonPagedPoolNx, 0x10ui64, 0x54736D56ui64);
  if( !PoolWithTag )
    return -1073741670;
  KeGetPrcb(v1);
  PoolWithTag->LowPart = v1;
  PoolWithTag[1] = MmGetPhysicalAddress(*(PVOID *)(v4 - 328));
  v5 = VslpLockPagesForTransfer((INT64)v6, (INT64)PoolWithTag, 0x10ui64, 0i64, 0);
  if( v5 >= 0 )
  {
    result[1] = v6[0];
    result[2] = v6[7];
    v5 = VslpEnterIumSecureMode(2u, 3, 0i64, (INT64)result);
    VslpUnlockPagesForTransfer((INT64 **)v6);
  }
  ExFreePoolWithTag(PoolWithTag, 0);
  return v5;
}

Referenced by:

KeWriteProtectProcessorState