PspLockRootJobFromProcess
VOID __stdcall PspLockRootJobFromProcess(
_EPROCESS *Process,
_ETHREAD *CurrentThread,
_EJOB **ImmediateJob,
_EJOB **RootJob){
_ETHREAD *v6;
_EJOB *v8;
_EJOB *i;
v8 = (_EJOB *)*((_QWORD *)Process + 162);
v6 = CurrentThread;
for( i = v8->RootJob; ; i = v8->RootJob )
{
PspLockJobExclusive((__int64)i, (__int64)CurrentThread);
if( v8 == *((_EJOB **)Process + 162) && i == v8->RootJob )
break;
PspUnlockJob((__int64)i, (__int64)v6);
CurrentThread = v6;
v8 = (_EJOB *)*((_QWORD *)Process + 162);
}
*ImmediateJob = v8;
*RootJob = i;
}Referenced by:
PspRemoveProcessFromJobChain
PspSendProcessNotificationToJobChain