SINGLE_LIST_ENTRY *__stdcall ExInterlockedPushEntryList(SINGLE_LIST_ENTRY *ListHead, UINT64 *Lock){
UINT64 *v2;
volatile INT64 *v4;
CHAR v6;
_SINGLE_LIST_ENTRY *Next;
v4 = (volatile INT64 *)v2;
v6 = ExpAcquireSpinLockDisabled(v2);
Next = ListHead->Next;
*Lock = (UINT64)ListHead->Next;
ListHead->Next = (_SINGLE_LIST_ENTRY *)Lock;
ExpReleaseSpinLockDisabled(v4, v6);
return Next;
}