PiCMReturnStatusResultData

NTSTATUS __stdcall PiCMReturnStatusResultData(
        UINT64 Result,
        UINT64 Status,
        UINT64 Problem,
        INT64 ProblemStatus,
        UINT64 ExpectedOutputSize,
        VOID *IoctlOutputBuffer,
        _SIZE_T IoctlOutputBufferSize,
        UINT64 *BytesUsed){
  int v8; 
  int v9; 
  int v10; 
  int v11; 
  NTSTATUS v12; 

  v8 = ProblemStatus;
  v9 = Problem;
  v10 = Status;
  v11 = Result;
  *(_DWORD *)BytesUsed = 0;
  v12 = 0;
  if( (unsigned int)IoctlOutputBufferSize < 0x14 || (_DWORD)ExpectedOutputSize != 20 )
    return -1073741811;
  ProbeForWrite((UINT64)IoctlOutputBuffer, (unsigned int)IoctlOutputBufferSize, 4i64);
  *(_DWORD *)IoctlOutputBuffer = 20;
  *((_DWORD *)IoctlOutputBuffer + 1) = v11;
  *((_DWORD *)IoctlOutputBuffer + 2) = v10;
  *((_DWORD *)IoctlOutputBuffer + 3) = v9;
  *((_DWORD *)IoctlOutputBuffer + 4) = v8;
  *(_DWORD *)BytesUsed = 20;
  return v12;
}

Referenced by:

PiCMGetDeviceStatus