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