ExpAcquireSpinLockDisabled
UINT8 __stdcall ExpAcquireSpinLockDisabled(UINT64 *Lock){
__int16 v2;
bool v3;
__int16 v5;
UINT64 SpinCount;
LODWORD(SpinCount) = 0;
v2 = v5;
_disable();
v3 = (v2 & 0x200) != 0;
while( _interlockedbittestandset64((volatile signed __int32 *)Lock, 0i64) )
{
if( v3 )
_enable();
do
KeYieldProcessorEx(&SpinCount);
while( *Lock );
_disable();
}
return v3;
}Referenced by:
ExInterlockedAddLargeInteger
ExInterlockedAddUlong
ExInterlockedPopEntryList
ExInterlockedPushEntryList
ExInterlockedRemoveHeadList