RtlpCopyLegacyContext
VOID __fastcall RtlpCopyLegacyContext(CHAR Operation, _CONTEXT *Destination, UINT64 ContextFlags, _CONTEXT *Source){
if( (ContextFlags & 0x10000) != 0 )
{
RtlpCopyLegacyContextX86(Operation, (_X86_NT5_CONTEXT *)Destination, ContextFlags, (_X86_NT5_CONTEXT *)Source);
}
else if( (ContextFlags & 0x100000) != 0 )
{
RtlpCopyLegacyContextAmd64(Operation, (_AMD64_CONTEXT *)Destination, ContextFlags, (_AMD64_CONTEXT *)Source);
}
else if( (ContextFlags & 0x200000) != 0 )
{
RtlpCopyLegacyContextArm(Operation, (__int64)Destination, ContextFlags, (__int64)Source);
}
else if( (ContextFlags & 0x400000) != 0 )
{
RtlpCopyLegacyContextArm64(Operation, (__int64)Destination, ContextFlags, (__int64)Source);
}
}Referenced by:
KeCopyContextFromUmsContext
KeCopyContextToUmsContext
KeUpdatePrimaryThreadContext
RtlCopyContext