PiCMReturnHandleResultData
NTSTATUS __stdcall PiCMReturnHandleResultData(
INT64 Result,
VOID *Handle,
UINT64 ExpectedOutputSize,
VOID *IoctlOutputBuffer,
UINT64 IoctlOutputBufferSize,
UINT64 *BytesUsed,
INT64 a7,
INT64 a8){
int v10;
NTSTATUS v11;
v10 = Result;
*(_DWORD *)BytesUsed = 0;
v11 = 0;
if( (unsigned int)IoctlOutputBufferSize < 0x10 || (_DWORD)ExpectedOutputSize != 16 )
return -1073741811;
ProbeForWrite((UINT64)IoctlOutputBuffer, (unsigned int)IoctlOutputBufferSize, 4i64);
*(_DWORD *)IoctlOutputBuffer = 16;
*((_DWORD *)IoctlOutputBuffer + 1) = v10;
*((_QWORD *)IoctlOutputBuffer + 1) = Handle;
*(_DWORD *)BytesUsed = 16;
return v11;
}Referenced by:
PiCMOpenClassKey
PiCMOpenDeviceInterfaceKey
PiCMOpenDeviceKey
PiCMOpenObjectKey