void __fastcall SMKM_STORE_MGR::SmDrainSList(union _SLIST_HEADER *a1, int a2){ PSLIST_ENTRY v2; PSLIST_ENTRY v3; if( a2 || *(_WORD *)a1 ) { v2 = RtlpInterlockedFlushSList(a1); while( v2 ) { v3 = v2; v2 = v2->Next; ExFreePoolWithTag(v3, 0); } } }