RtlFindMessage
NTSTATUS __fastcall RtlFindMessage(PVOID DllHandle, UINT64 a2, UINT64 a3, UINT64 a4, INT64 MessageEntry){
unsigned int v6;
NTSTATUS result;
UINT64 Size;
PVOID ResourceDirectoryOrData;
VOID *Address;
UINT64 ResourceIdPath[4];
ResourceDirectoryOrData = 0i64;
Address = 0i64;
LODWORD(Size) = 0;
v6 = a4;
ResourceIdPath[0] = (unsigned int)a2;
ResourceIdPath[2] = (unsigned int)a3;
ResourceIdPath[1] = 1i64;
ResourceIdPath[3] = (unsigned int)a4;
result = LdrpSearchResourceSection_U(DllHandle, ResourceIdPath, 4ui64, 0x40ui64, &ResourceDirectoryOrData);
if( result >= 0 )
{
result = LdrpAccessResourceData(
DllHandle,
(const _IMAGE_RESOURCE_DATA_ENTRY *)ResourceDirectoryOrData,
&Address,
&Size);
if( result >= 0 )
return RtlpFindMessageInTable((INT64 *)Address, (unsigned int)Size, v6, (UINT16 **)MessageEntry);
}
return result;
}Referenced by:
ExpSystemErrorHandler2
InitBootProcessor
IopInitializeBootLogging
Phase1InitializationDiscard
PiGetDefaultMessageString
ResFwFindMessage