CmpTryAcquireKcbIXLocks

INT64 __fastcall CmpTryAcquireKcbIXLocks(INT64 a1, CHAR a2, INT64 a3, UINT64 *a4){
  int v6; 
  _LOOKASIDE_LIST_EX *v7; 
  INT64 result; 

  v6 = CmpTryAcquireIXLockWithRollbackPacket(
         (unsigned int *)(a1 + 248),
         a2,
         (unsigned int *)a4,
         (_LOOKASIDE_LIST_EX *)a4);
  result = CmpTryAcquireIXLockWithRollbackPacket((unsigned int *)(a1 + 264), 1, (unsigned int *)a4, v7);
  if( v6 < 0 )
  {
    if( v6 != -1073741267 )
      return(unsigned int)v6;
    if( (int)result >= 0 )
      return 3221226029i64;
  }
  else if( (int)result >= 0 )
  {
    return 0i64;
  }
  if( (_DWORD)result == -1073741267 )
    return 3221226029i64;
  return result;
}

Referenced by:

CmRenameKey
CmRestoreKey
CmSetKeyFlags
CmSetLastWriteTimeKey
CmpPerformUnloadKey
CmpPrepareForSubtreeInvalidationWorker
CmpSaveBootControlSet