ObpLockDirectoryExclusive

VOID __fastcall ObpLockDirectoryExclusive(_OBP_LOOKUP_CONTEXT *LookupContext, _OBJECT_DIRECTORY *Directory){
  _ETHREAD *CurrentThread; 
  LookupContext->LockStateSignature = -1431694796;
  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --*((_WORD *)CurrentThread + 242);
  ExAcquirePushLockExclusiveEx((UINT64)&Directory->Lock, 0i64);
  LookupContext->LockStateSignature = -859041228;
  ObfReferenceObjectWithTag(Directory, 0x746C6644u);
  LookupContext->Directory = Directory;
  *(_WORD *)&LookupContext->DirectoryLocked = 257;
}

Referenced by:

NtSetInformationObject
ObCloseHandleTableEntry
ObCreateObjectTypeEx
ObInitSystem
ObpDeleteNameCheck
ObpLookupObjectName
ObpMarkDirectoryObjectsTemporary