; 
; Exports of file MSDART.DLL
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY MSDART.DLL
EXPORTS
; public: __cdecl CCritSec::CCritSec(void) __ptr64
??0CCritSec@@QEAA@XZ
; public: __cdecl CDoubleList::CDoubleList(void) __ptr64
??0CDoubleList@@QEAA@XZ
; public: __cdecl CEXAutoBackupFile::CEXAutoBackupFile(unsigned short const * __ptr64) __ptr64
??0CEXAutoBackupFile@@QEAA@PEBG@Z
; public: __cdecl CEXAutoBackupFile::CEXAutoBackupFile(void) __ptr64
??0CEXAutoBackupFile@@QEAA@XZ
; public: __cdecl CExFileOperation::CExFileOperation(void) __ptr64
??0CExFileOperation@@QEAA@XZ
; public: __cdecl CFakeLock::CFakeLock(void) __ptr64
??0CFakeLock@@QEAA@XZ
; private: __cdecl CLKRHashTable::CLKRHashTable(class CLKRHashTable const & __ptr64) __ptr64
??0CLKRHashTable@@AEAA@AEBV0@@Z
; public: __cdecl CLKRHashTable::CLKRHashTable(char const * __ptr64,unsigned __int64 const  (__cdecl*)(void const * __ptr64),unsigned long (__cdecl*)(unsigned __int64),bool (__cdecl*)(unsigned __int64,unsigned __int64),void (__cdecl*)(void const * __ptr64,int),double,unsigned long,unsigned long) __ptr64
??0CLKRHashTable@@QEAA@PEBDP6A?B_KPEBX@ZP6AK_K@ZP6A_N33@ZP6AX1H@ZNKK@Z
; public: __cdecl CLKRHashTableStats::CLKRHashTableStats(void) __ptr64
??0CLKRHashTableStats@@QEAA@XZ
; private: __cdecl CLKRLinearHashTable::CLKRLinearHashTable(class CLKRLinearHashTable const & __ptr64) __ptr64
??0CLKRLinearHashTable@@AEAA@AEBV0@@Z
; private: __cdecl CLKRLinearHashTable::CLKRLinearHashTable(char const * __ptr64,unsigned __int64 const  (__cdecl*)(void const * __ptr64),unsigned long (__cdecl*)(unsigned __int64),bool (__cdecl*)(unsigned __int64,unsigned __int64),void (__cdecl*)(void const * __ptr64,int),double,unsigned long,class CLKRHashTable * __ptr64) __ptr64
??0CLKRLinearHashTable@@AEAA@PEBDP6A?B_KPEBX@ZP6AK_K@ZP6A_N33@ZP6AX1H@ZNKPEAVCLKRHashTable@@@Z
; public: __cdecl CLKRLinearHashTable::CLKRLinearHashTable(char const * __ptr64,unsigned __int64 const  (__cdecl*)(void const * __ptr64),unsigned long (__cdecl*)(unsigned __int64),bool (__cdecl*)(unsigned __int64,unsigned __int64),void (__cdecl*)(void const * __ptr64,int),double,unsigned long,unsigned long) __ptr64
??0CLKRLinearHashTable@@QEAA@PEBDP6A?B_KPEBX@ZP6AK_K@ZP6A_N33@ZP6AX1H@ZNKK@Z
; public: __cdecl CLockedDoubleList::CLockedDoubleList(void) __ptr64
??0CLockedDoubleList@@QEAA@XZ
; public: __cdecl CLockedSingleList::CLockedSingleList(void) __ptr64
??0CLockedSingleList@@QEAA@XZ
; public: __cdecl CReaderWriterLock2::CReaderWriterLock2(void) __ptr64
??0CReaderWriterLock2@@QEAA@XZ
; public: __cdecl CReaderWriterLock3::CReaderWriterLock3(void) __ptr64
??0CReaderWriterLock3@@QEAA@XZ
; public: __cdecl CReaderWriterLock::CReaderWriterLock(void) __ptr64
??0CReaderWriterLock@@QEAA@XZ
; public: __cdecl CSingleList::CSingleList(void) __ptr64
??0CSingleList@@QEAA@XZ
; public: __cdecl CSmallSpinLock::CSmallSpinLock(void) __ptr64
??0CSmallSpinLock@@QEAA@XZ
; public: __cdecl CSpinLock::CSpinLock(void) __ptr64
??0CSpinLock@@QEAA@XZ
; public: __cdecl CCritSec::~CCritSec(void) __ptr64
??1CCritSec@@QEAA@XZ
; public: __cdecl CDoubleList::~CDoubleList(void) __ptr64
??1CDoubleList@@QEAA@XZ
; public: __cdecl CEXAutoBackupFile::~CEXAutoBackupFile(void) __ptr64
??1CEXAutoBackupFile@@QEAA@XZ
; public: __cdecl CExFileOperation::~CExFileOperation(void) __ptr64
??1CExFileOperation@@QEAA@XZ
; public: __cdecl CFakeLock::~CFakeLock(void) __ptr64
??1CFakeLock@@QEAA@XZ
; public: __cdecl CLKRHashTable::~CLKRHashTable(void) __ptr64
??1CLKRHashTable@@QEAA@XZ
; public: __cdecl CLKRLinearHashTable::~CLKRLinearHashTable(void) __ptr64
??1CLKRLinearHashTable@@QEAA@XZ
; public: __cdecl CLockedDoubleList::~CLockedDoubleList(void) __ptr64
??1CLockedDoubleList@@QEAA@XZ
; public: __cdecl CLockedSingleList::~CLockedSingleList(void) __ptr64
??1CLockedSingleList@@QEAA@XZ
; public: __cdecl CReaderWriterLock2::~CReaderWriterLock2(void) __ptr64
??1CReaderWriterLock2@@QEAA@XZ
; public: __cdecl CReaderWriterLock3::~CReaderWriterLock3(void) __ptr64
??1CReaderWriterLock3@@QEAA@XZ
; public: __cdecl CReaderWriterLock::~CReaderWriterLock(void) __ptr64
??1CReaderWriterLock@@QEAA@XZ
; public: __cdecl CSingleList::~CSingleList(void) __ptr64
??1CSingleList@@QEAA@XZ
; public: __cdecl CSmallSpinLock::~CSmallSpinLock(void) __ptr64
??1CSmallSpinLock@@QEAA@XZ
; public: __cdecl CSpinLock::~CSpinLock(void) __ptr64
??1CSpinLock@@QEAA@XZ
; public: class CLockBase<1,1,3,1,3,2> & __ptr64 __cdecl CLockBase<1,1,3,1,3,2>::operator=(class CLockBase<1,1,3,1,3,2> const & __ptr64) __ptr64
??4?$CLockBase@$00$00$02$00$02$01@@QEAAAEAV0@AEBV0@@Z
; public: class CLockBase<2,1,1,1,3,2> & __ptr64 __cdecl CLockBase<2,1,1,1,3,2>::operator=(class CLockBase<2,1,1,1,3,2> const & __ptr64) __ptr64
??4?$CLockBase@$01$00$00$00$02$01@@QEAAAEAV0@AEBV0@@Z
; public: class CLockBase<3,1,1,1,1,1> & __ptr64 __cdecl CLockBase<3,1,1,1,1,1>::operator=(class CLockBase<3,1,1,1,1,1> const & __ptr64) __ptr64
??4?$CLockBase@$02$00$00$00$00$00@@QEAAAEAV0@AEBV0@@Z
; public: class CLockBase<4,1,1,2,3,3> & __ptr64 __cdecl CLockBase<4,1,1,2,3,3>::operator=(class CLockBase<4,1,1,2,3,3> const & __ptr64) __ptr64
??4?$CLockBase@$03$00$00$01$02$02@@QEAAAEAV0@AEBV0@@Z
; public: class CLockBase<5,2,2,1,3,2> & __ptr64 __cdecl CLockBase<5,2,2,1,3,2>::operator=(class CLockBase<5,2,2,1,3,2> const & __ptr64) __ptr64
??4?$CLockBase@$04$01$01$00$02$01@@QEAAAEAV0@AEBV0@@Z
; public: class CLockBase<6,2,2,1,3,2> & __ptr64 __cdecl CLockBase<6,2,2,1,3,2>::operator=(class CLockBase<6,2,2,1,3,2> const & __ptr64) __ptr64
??4?$CLockBase@$05$01$01$00$02$01@@QEAAAEAV0@AEBV0@@Z
; public: class CLockBase<7,2,1,1,3,2> & __ptr64 __cdecl CLockBase<7,2,1,1,3,2>::operator=(class CLockBase<7,2,1,1,3,2> const & __ptr64) __ptr64
??4?$CLockBase@$06$01$00$00$02$01@@QEAAAEAV0@AEBV0@@Z
; public: class CCritSec & __ptr64 __cdecl CCritSec::operator=(class CCritSec const & __ptr64) __ptr64
??4CCritSec@@QEAAAEAV0@AEBV0@@Z
; public: class CDoubleList & __ptr64 __cdecl CDoubleList::operator=(class CDoubleList const & __ptr64) __ptr64
??4CDoubleList@@QEAAAEAV0@AEBV0@@Z
; public: class CEXAutoBackupFile & __ptr64 __cdecl CEXAutoBackupFile::operator=(class CEXAutoBackupFile const & __ptr64) __ptr64
??4CEXAutoBackupFile@@QEAAAEAV0@AEBV0@@Z
; public: class CExFileOperation & __ptr64 __cdecl CExFileOperation::operator=(class CExFileOperation const & __ptr64) __ptr64
??4CExFileOperation@@QEAAAEAV0@AEBV0@@Z
; public: class CFakeLock & __ptr64 __cdecl CFakeLock::operator=(class CFakeLock const & __ptr64) __ptr64
??4CFakeLock@@QEAAAEAV0@AEBV0@@Z
; private: class CLKRHashTable & __ptr64 __cdecl CLKRHashTable::operator=(class CLKRHashTable const & __ptr64) __ptr64
??4CLKRHashTable@@AEAAAEAV0@AEBV0@@Z
; public: class CLKRHashTableStats & __ptr64 __cdecl CLKRHashTableStats::operator=(class CLKRHashTableStats const & __ptr64) __ptr64
??4CLKRHashTableStats@@QEAAAEAV0@AEBV0@@Z
; private: class CLKRLinearHashTable & __ptr64 __cdecl CLKRLinearHashTable::operator=(class CLKRLinearHashTable const & __ptr64) __ptr64
??4CLKRLinearHashTable@@AEAAAEAV0@AEBV0@@Z
; public: class CLockedDoubleList & __ptr64 __cdecl CLockedDoubleList::operator=(class CLockedDoubleList const & __ptr64) __ptr64
??4CLockedDoubleList@@QEAAAEAV0@AEBV0@@Z
; public: class CLockedSingleList & __ptr64 __cdecl CLockedSingleList::operator=(class CLockedSingleList const & __ptr64) __ptr64
??4CLockedSingleList@@QEAAAEAV0@AEBV0@@Z
; public: class CMdVersionInfo & __ptr64 __cdecl CMdVersionInfo::operator=(class CMdVersionInfo const & __ptr64) __ptr64
??4CMdVersionInfo@@QEAAAEAV0@AEBV0@@Z
; public: class CReaderWriterLock2 & __ptr64 __cdecl CReaderWriterLock2::operator=(class CReaderWriterLock2 const & __ptr64) __ptr64
??4CReaderWriterLock2@@QEAAAEAV0@AEBV0@@Z
; public: class CReaderWriterLock3 & __ptr64 __cdecl CReaderWriterLock3::operator=(class CReaderWriterLock3 const & __ptr64) __ptr64
??4CReaderWriterLock3@@QEAAAEAV0@AEBV0@@Z
; public: class CReaderWriterLock & __ptr64 __cdecl CReaderWriterLock::operator=(class CReaderWriterLock const & __ptr64) __ptr64
??4CReaderWriterLock@@QEAAAEAV0@AEBV0@@Z
; public: class CSingleList & __ptr64 __cdecl CSingleList::operator=(class CSingleList const & __ptr64) __ptr64
??4CSingleList@@QEAAAEAV0@AEBV0@@Z
; public: class CSmallSpinLock & __ptr64 __cdecl CSmallSpinLock::operator=(class CSmallSpinLock const & __ptr64) __ptr64
??4CSmallSpinLock@@QEAAAEAV0@AEBV0@@Z
; public: class CSpinLock & __ptr64 __cdecl CSpinLock::operator=(class CSpinLock const & __ptr64) __ptr64
??4CSpinLock@@QEAAAEAV0@AEBV0@@Z
; public: unsigned long __cdecl CLKRHashTable::Apply(enum LK_ACTION  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64,enum LK_LOCKTYPE) __ptr64
?Apply@CLKRHashTable@@QEAAKP6A?AW4LK_ACTION@@PEBXPEAX@Z1W4LK_LOCKTYPE@@@Z
; public: unsigned long __cdecl CLKRLinearHashTable::Apply(enum LK_ACTION  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64,enum LK_LOCKTYPE) __ptr64
?Apply@CLKRLinearHashTable@@QEAAKP6A?AW4LK_ACTION@@PEBXPEAX@Z1W4LK_LOCKTYPE@@@Z
; public: unsigned long __cdecl CLKRHashTable::ApplyIf(enum LK_PREDICATE  (__cdecl*)(void const * __ptr64,void * __ptr64),enum LK_ACTION  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64,enum LK_LOCKTYPE) __ptr64
?ApplyIf@CLKRHashTable@@QEAAKP6A?AW4LK_PREDICATE@@PEBXPEAX@ZP6A?AW4LK_ACTION@@01@Z1W4LK_LOCKTYPE@@@Z
; public: unsigned long __cdecl CLKRLinearHashTable::ApplyIf(enum LK_PREDICATE  (__cdecl*)(void const * __ptr64,void * __ptr64),enum LK_ACTION  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64,enum LK_LOCKTYPE) __ptr64
?ApplyIf@CLKRLinearHashTable@@QEAAKP6A?AW4LK_PREDICATE@@PEBXPEAX@ZP6A?AW4LK_ACTION@@01@Z1W4LK_LOCKTYPE@@@Z
; public: long __cdecl CEXAutoBackupFile::BackupFile(unsigned short const * __ptr64) __ptr64
?BackupFile@CEXAutoBackupFile@@QEAAJPEBG@Z
; public: static long __cdecl CLKRHashTableStats::BucketIndex(long)
?BucketIndex@CLKRHashTableStats@@SAJJ@Z
; public: static long __cdecl CLKRHashTableStats::BucketSize(long)
?BucketSize@CLKRHashTableStats@@SAJJ@Z
; public: static long const * __ptr64 __cdecl CLKRHashTableStats::BucketSizes(void)
?BucketSizes@CLKRHashTableStats@@SAPEBJXZ
; public: int __cdecl CLKRHashTable::CheckTable(void)const  __ptr64
?CheckTable@CLKRHashTable@@QEBAHXZ
; public: int __cdecl CLKRLinearHashTable::CheckTable(void)const  __ptr64
?CheckTable@CLKRLinearHashTable@@QEBAHXZ
; public: static char const * __ptr64 __cdecl CCritSec::ClassName(void)
?ClassName@CCritSec@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CFakeLock::ClassName(void)
?ClassName@CFakeLock@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CLKRHashTable::ClassName(void)
?ClassName@CLKRHashTable@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CLKRLinearHashTable::ClassName(void)
?ClassName@CLKRLinearHashTable@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CReaderWriterLock2::ClassName(void)
?ClassName@CReaderWriterLock2@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CReaderWriterLock3::ClassName(void)
?ClassName@CReaderWriterLock3@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CReaderWriterLock::ClassName(void)
?ClassName@CReaderWriterLock@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CSmallSpinLock::ClassName(void)
?ClassName@CSmallSpinLock@@SAPEBDXZ
; public: static char const * __ptr64 __cdecl CSpinLock::ClassName(void)
?ClassName@CSpinLock@@SAPEBDXZ
; public: void __cdecl CLKRHashTable::Clear(void) __ptr64
?Clear@CLKRHashTable@@QEAAXXZ
; public: void __cdecl CLKRLinearHashTable::Clear(void) __ptr64
?Clear@CLKRLinearHashTable@@QEAAXXZ
; public: enum LK_RETCODE  __cdecl CLKRHashTable::CloseIterator(class CLKRHashTable::CIterator * __ptr64) __ptr64
?CloseIterator@CLKRHashTable@@QEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::CloseIterator(class CLKRHashTable::CConstIterator * __ptr64)const  __ptr64
?CloseIterator@CLKRHashTable@@QEBA?AW4LK_RETCODE@@PEAVCConstIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::CloseIterator(class CLKRLinearHashTable::CIterator * __ptr64) __ptr64
?CloseIterator@CLKRLinearHashTable@@QEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::CloseIterator(class CLKRLinearHashTable::CConstIterator * __ptr64)const  __ptr64
?CloseIterator@CLKRLinearHashTable@@QEBA?AW4LK_RETCODE@@PEAVCConstIterator@1@@Z
; public: void __cdecl CCritSec::ConvertExclusiveToShared(void) __ptr64
?ConvertExclusiveToShared@CCritSec@@QEAAXXZ
; public: void __cdecl CFakeLock::ConvertExclusiveToShared(void) __ptr64
?ConvertExclusiveToShared@CFakeLock@@QEAAXXZ
; public: void __cdecl CLKRHashTable::ConvertExclusiveToShared(void)const  __ptr64
?ConvertExclusiveToShared@CLKRHashTable@@QEBAXXZ
; public: void __cdecl CLKRLinearHashTable::ConvertExclusiveToShared(void)const  __ptr64
?ConvertExclusiveToShared@CLKRLinearHashTable@@QEBAXXZ
; public: void __cdecl CReaderWriterLock2::ConvertExclusiveToShared(void) __ptr64
?ConvertExclusiveToShared@CReaderWriterLock2@@QEAAXXZ
; public: void __cdecl CReaderWriterLock3::ConvertExclusiveToShared(void) __ptr64
?ConvertExclusiveToShared@CReaderWriterLock3@@QEAAXXZ
; public: void __cdecl CReaderWriterLock::ConvertExclusiveToShared(void) __ptr64
?ConvertExclusiveToShared@CReaderWriterLock@@QEAAXXZ
; public: void __cdecl CSmallSpinLock::ConvertExclusiveToShared(void) __ptr64
?ConvertExclusiveToShared@CSmallSpinLock@@QEAAXXZ
; public: void __cdecl CSpinLock::ConvertExclusiveToShared(void) __ptr64
?ConvertExclusiveToShared@CSpinLock@@QEAAXXZ
; public: void __cdecl CCritSec::ConvertSharedToExclusive(void) __ptr64
?ConvertSharedToExclusive@CCritSec@@QEAAXXZ
; public: void __cdecl CFakeLock::ConvertSharedToExclusive(void) __ptr64
?ConvertSharedToExclusive@CFakeLock@@QEAAXXZ
; public: void __cdecl CLKRHashTable::ConvertSharedToExclusive(void)const  __ptr64
?ConvertSharedToExclusive@CLKRHashTable@@QEBAXXZ
; public: void __cdecl CLKRLinearHashTable::ConvertSharedToExclusive(void)const  __ptr64
?ConvertSharedToExclusive@CLKRLinearHashTable@@QEBAXXZ
; public: void __cdecl CReaderWriterLock2::ConvertSharedToExclusive(void) __ptr64
?ConvertSharedToExclusive@CReaderWriterLock2@@QEAAXXZ
; public: void __cdecl CReaderWriterLock3::ConvertSharedToExclusive(void) __ptr64
?ConvertSharedToExclusive@CReaderWriterLock3@@QEAAXXZ
; public: void __cdecl CReaderWriterLock::ConvertSharedToExclusive(void) __ptr64
?ConvertSharedToExclusive@CReaderWriterLock@@QEAAXXZ
; public: void __cdecl CSmallSpinLock::ConvertSharedToExclusive(void) __ptr64
?ConvertSharedToExclusive@CSmallSpinLock@@QEAAXXZ
; public: void __cdecl CSpinLock::ConvertSharedToExclusive(void) __ptr64
?ConvertSharedToExclusive@CSpinLock@@QEAAXXZ
; long __cdecl CreateHolder(struct IGPDispenser * __ptr64,int,unsigned int,struct IGPHolder * __ptr64 * __ptr64)
?CreateHolder@@YAJPEAUIGPDispenser@@HIPEAPEAUIGPHolder@@@Z
; public: unsigned long __cdecl CLKRHashTable::DeleteIf(enum LK_PREDICATE  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64) __ptr64
?DeleteIf@CLKRHashTable@@QEAAKP6A?AW4LK_PREDICATE@@PEBXPEAX@Z1@Z
; public: unsigned long __cdecl CLKRLinearHashTable::DeleteIf(enum LK_PREDICATE  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64) __ptr64
?DeleteIf@CLKRLinearHashTable@@QEAAKP6A?AW4LK_PREDICATE@@PEBXPEAX@Z1@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::DeleteKey(unsigned __int64) __ptr64
?DeleteKey@CLKRHashTable@@QEAA?AW4LK_RETCODE@@_K@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::DeleteKey(unsigned __int64) __ptr64
?DeleteKey@CLKRLinearHashTable@@QEAA?AW4LK_RETCODE@@_K@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::DeleteRecord(void const * __ptr64) __ptr64
?DeleteRecord@CLKRHashTable@@QEAA?AW4LK_RETCODE@@PEBX@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::DeleteRecord(void const * __ptr64) __ptr64
?DeleteRecord@CLKRLinearHashTable@@QEAA?AW4LK_RETCODE@@PEBX@Z
; public: long __cdecl CExFileOperation::FOCopyFile(unsigned short const * __ptr64,unsigned short const * __ptr64,int) __ptr64
?FOCopyFile@CExFileOperation@@QEAAJPEBG0H@Z
; public: long __cdecl CExFileOperation::FOCopyFileDACLS(unsigned short const * __ptr64,unsigned short const * __ptr64) __ptr64
?FOCopyFileDACLS@CExFileOperation@@QEAAJPEBG0@Z
; public: long __cdecl CExFileOperation::FODeleteFile(unsigned short const * __ptr64) __ptr64
?FODeleteFile@CExFileOperation@@QEAAJPEBG@Z
; public: long __cdecl CExFileOperation::FOMoveFile(unsigned short const * __ptr64,unsigned short const * __ptr64) __ptr64
?FOMoveFile@CExFileOperation@@QEAAJPEBG0@Z
; public: long __cdecl CExFileOperation::FOReplaceFile(unsigned short const * __ptr64,unsigned short const * __ptr64) __ptr64
?FOReplaceFile@CExFileOperation@@QEAAJPEBG0@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::FindKey(unsigned __int64,void const * __ptr64 * __ptr64)const  __ptr64
?FindKey@CLKRHashTable@@QEBA?AW4LK_RETCODE@@_KPEAPEBX@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::FindKey(unsigned __int64,void const * __ptr64 * __ptr64)const  __ptr64
?FindKey@CLKRLinearHashTable@@QEBA?AW4LK_RETCODE@@_KPEAPEBX@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::FindRecord(void const * __ptr64)const  __ptr64
?FindRecord@CLKRHashTable@@QEBA?AW4LK_RETCODE@@PEBX@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::FindRecord(void const * __ptr64)const  __ptr64
?FindRecord@CLKRLinearHashTable@@QEBA?AW4LK_RETCODE@@PEBX@Z
; public: class CListEntry * __ptr64 __cdecl CDoubleList::First(void)const  __ptr64
?First@CDoubleList@@QEBAQEAVCListEntry@@XZ
; public: class CListEntry * __ptr64 __cdecl CLockedDoubleList::First(void) __ptr64
?First@CLockedDoubleList@@QEAAQEAVCListEntry@@XZ
; public: int __cdecl CEXAutoBackupFile::GetBackupFile(unsigned short * __ptr64 * __ptr64) __ptr64
?GetBackupFile@CEXAutoBackupFile@@QEAAHPEAPEAG@Z
; public: unsigned short __cdecl CLKRHashTable::GetBucketLockSpinCount(void) __ptr64
?GetBucketLockSpinCount@CLKRHashTable@@QEAAGXZ
; public: unsigned short __cdecl CLKRLinearHashTable::GetBucketLockSpinCount(void) __ptr64
?GetBucketLockSpinCount@CLKRLinearHashTable@@QEAAGXZ
; public: static double __cdecl CCritSec::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CCritSec@@SANXZ
; public: static double __cdecl CFakeLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CFakeLock@@SANXZ
; public: static double __cdecl CReaderWriterLock2::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CReaderWriterLock2@@SANXZ
; public: static double __cdecl CReaderWriterLock3::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CReaderWriterLock3@@SANXZ
; public: static double __cdecl CReaderWriterLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CReaderWriterLock@@SANXZ
; public: static double __cdecl CSmallSpinLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CSmallSpinLock@@SANXZ
; public: static double __cdecl CSpinLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CSpinLock@@SANXZ
; public: static unsigned short __cdecl CCritSec::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CCritSec@@SAGXZ
; public: static unsigned short __cdecl CFakeLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CFakeLock@@SAGXZ
; public: static unsigned short __cdecl CReaderWriterLock2::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CReaderWriterLock2@@SAGXZ
; public: static unsigned short __cdecl CReaderWriterLock3::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CReaderWriterLock3@@SAGXZ
; public: static unsigned short __cdecl CReaderWriterLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CReaderWriterLock@@SAGXZ
; public: static unsigned short __cdecl CSmallSpinLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CSmallSpinLock@@SAGXZ
; public: static unsigned short __cdecl CSpinLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CSpinLock@@SAGXZ
; public: unsigned short __cdecl CCritSec::GetSpinCount(void)const  __ptr64
?GetSpinCount@CCritSec@@QEBAGXZ
; public: unsigned short __cdecl CFakeLock::GetSpinCount(void)const  __ptr64
?GetSpinCount@CFakeLock@@QEBAGXZ
; public: unsigned short __cdecl CReaderWriterLock2::GetSpinCount(void)const  __ptr64
?GetSpinCount@CReaderWriterLock2@@QEBAGXZ
; public: unsigned short __cdecl CReaderWriterLock3::GetSpinCount(void)const  __ptr64
?GetSpinCount@CReaderWriterLock3@@QEBAGXZ
; public: unsigned short __cdecl CReaderWriterLock::GetSpinCount(void)const  __ptr64
?GetSpinCount@CReaderWriterLock@@QEBAGXZ
; public: unsigned short __cdecl CSmallSpinLock::GetSpinCount(void)const  __ptr64
?GetSpinCount@CSmallSpinLock@@QEBAGXZ
; public: unsigned short __cdecl CSpinLock::GetSpinCount(void)const  __ptr64
?GetSpinCount@CSpinLock@@QEBAGXZ
; public: class CLKRHashTableStats  __cdecl CLKRHashTable::GetStatistics(void)const  __ptr64
?GetStatistics@CLKRHashTable@@QEBA?AVCLKRHashTableStats@@XZ
; public: class CLKRHashTableStats  __cdecl CLKRLinearHashTable::GetStatistics(void)const  __ptr64
?GetStatistics@CLKRLinearHashTable@@QEBA?AVCLKRHashTableStats@@XZ
; public: unsigned short __cdecl CLKRHashTable::GetTableLockSpinCount(void) __ptr64
?GetTableLockSpinCount@CLKRHashTable@@QEAAGXZ
; public: unsigned short __cdecl CLKRLinearHashTable::GetTableLockSpinCount(void) __ptr64
?GetTableLockSpinCount@CLKRLinearHashTable@@QEAAGXZ
; public: static int __cdecl CMdVersionInfo::GetVersionExW(struct _OSVERSIONINFOW * __ptr64)
?GetVersionExW@CMdVersionInfo@@SAHPEAU_OSVERSIONINFOW@@@Z
; public: class CListEntry const * __ptr64 __cdecl CDoubleList::HeadNode(void)const  __ptr64
?HeadNode@CDoubleList@@QEBAQEBVCListEntry@@XZ
; public: class CListEntry const * __ptr64 __cdecl CLockedDoubleList::HeadNode(void)const  __ptr64
?HeadNode@CLockedDoubleList@@QEBAQEBVCListEntry@@XZ
; public: enum LK_RETCODE  __cdecl CLKRHashTable::IncrementIterator(class CLKRHashTable::CIterator * __ptr64) __ptr64
?IncrementIterator@CLKRHashTable@@QEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::IncrementIterator(class CLKRHashTable::CConstIterator * __ptr64)const  __ptr64
?IncrementIterator@CLKRHashTable@@QEBA?AW4LK_RETCODE@@PEAVCConstIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::IncrementIterator(class CLKRLinearHashTable::CIterator * __ptr64) __ptr64
?IncrementIterator@CLKRLinearHashTable@@QEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::IncrementIterator(class CLKRLinearHashTable::CConstIterator * __ptr64)const  __ptr64
?IncrementIterator@CLKRLinearHashTable@@QEBA?AW4LK_RETCODE@@PEAVCConstIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::InitializeIterator(class CLKRHashTable::CIterator * __ptr64) __ptr64
?InitializeIterator@CLKRHashTable@@QEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::InitializeIterator(class CLKRHashTable::CConstIterator * __ptr64)const  __ptr64
?InitializeIterator@CLKRHashTable@@QEBA?AW4LK_RETCODE@@PEAVCConstIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::InitializeIterator(class CLKRLinearHashTable::CIterator * __ptr64) __ptr64
?InitializeIterator@CLKRLinearHashTable@@QEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::InitializeIterator(class CLKRLinearHashTable::CConstIterator * __ptr64)const  __ptr64
?InitializeIterator@CLKRLinearHashTable@@QEBA?AW4LK_RETCODE@@PEAVCConstIterator@1@@Z
; private: static int __cdecl CMdVersionInfo::InitializeVersionInfo(void)
?InitializeVersionInfo@CMdVersionInfo@@CAHXZ
; public: void __cdecl CDoubleList::InsertHead(class CListEntry * __ptr64 const) __ptr64
?InsertHead@CDoubleList@@QEAAXQEAVCListEntry@@@Z
; public: void __cdecl CLockedDoubleList::InsertHead(class CListEntry * __ptr64 const) __ptr64
?InsertHead@CLockedDoubleList@@QEAAXQEAVCListEntry@@@Z
; public: enum LK_RETCODE  __cdecl CLKRHashTable::InsertRecord(void const * __ptr64,bool) __ptr64
?InsertRecord@CLKRHashTable@@QEAA?AW4LK_RETCODE@@PEBX_N@Z
; public: enum LK_RETCODE  __cdecl CLKRLinearHashTable::InsertRecord(void const * __ptr64,bool) __ptr64
?InsertRecord@CLKRLinearHashTable@@QEAA?AW4LK_RETCODE@@PEBX_N@Z
; public: void __cdecl CDoubleList::InsertTail(class CListEntry * __ptr64 const) __ptr64
?InsertTail@CDoubleList@@QEAAXQEAVCListEntry@@@Z
; public: void __cdecl CLockedDoubleList::InsertTail(class CListEntry * __ptr64 const) __ptr64
?InsertTail@CLockedDoubleList@@QEAAXQEAVCListEntry@@@Z
; public: bool __cdecl CDoubleList::IsEmpty(void)const  __ptr64
?IsEmpty@CDoubleList@@QEBA_NXZ
; public: bool __cdecl CLockedDoubleList::IsEmpty(void)const  __ptr64
?IsEmpty@CLockedDoubleList@@QEBA_NXZ
; public: bool __cdecl CLockedSingleList::IsEmpty(void)const  __ptr64
?IsEmpty@CLockedSingleList@@QEBA_NXZ
; public: bool __cdecl CSingleList::IsEmpty(void)const  __ptr64
?IsEmpty@CSingleList@@QEBA_NXZ
; public: bool __cdecl CLockedDoubleList::IsLocked(void)const  __ptr64
?IsLocked@CLockedDoubleList@@QEBA_NXZ
; public: bool __cdecl CLockedSingleList::IsLocked(void)const  __ptr64
?IsLocked@CLockedSingleList@@QEBA_NXZ
; public: static int __cdecl CMdVersionInfo::IsMillnm(void)
?IsMillnm@CMdVersionInfo@@SAHXZ
; public: bool __cdecl CCritSec::IsReadLocked(void)const  __ptr64
?IsReadLocked@CCritSec@@QEBA_NXZ
; public: bool __cdecl CFakeLock::IsReadLocked(void)const  __ptr64
?IsReadLocked@CFakeLock@@QEBA_NXZ
; public: bool __cdecl CLKRHashTable::IsReadLocked(void)const  __ptr64
?IsReadLocked@CLKRHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRLinearHashTable::IsReadLocked(void)const  __ptr64
?IsReadLocked@CLKRLinearHashTable@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock2::IsReadLocked(void)const  __ptr64
?IsReadLocked@CReaderWriterLock2@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock3::IsReadLocked(void)const  __ptr64
?IsReadLocked@CReaderWriterLock3@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock::IsReadLocked(void)const  __ptr64
?IsReadLocked@CReaderWriterLock@@QEBA_NXZ
; public: bool __cdecl CSmallSpinLock::IsReadLocked(void)const  __ptr64
?IsReadLocked@CSmallSpinLock@@QEBA_NXZ
; public: bool __cdecl CSpinLock::IsReadLocked(void)const  __ptr64
?IsReadLocked@CSpinLock@@QEBA_NXZ
; public: bool __cdecl CCritSec::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CCritSec@@QEBA_NXZ
; public: bool __cdecl CFakeLock::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CFakeLock@@QEBA_NXZ
; public: bool __cdecl CLKRHashTable::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CLKRHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRLinearHashTable::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CLKRLinearHashTable@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock2::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CReaderWriterLock2@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock3::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CReaderWriterLock3@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CReaderWriterLock@@QEBA_NXZ
; public: bool __cdecl CSmallSpinLock::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CSmallSpinLock@@QEBA_NXZ
; public: bool __cdecl CSpinLock::IsReadUnlocked(void)const  __ptr64
?IsReadUnlocked@CSpinLock@@QEBA_NXZ
; public: bool __cdecl CLockedDoubleList::IsUnlocked(void)const  __ptr64
?IsUnlocked@CLockedDoubleList@@QEBA_NXZ
; public: bool __cdecl CLockedSingleList::IsUnlocked(void)const  __ptr64
?IsUnlocked@CLockedSingleList@@QEBA_NXZ
; public: bool __cdecl CLKRHashTable::IsUsable(void)const  __ptr64
?IsUsable@CLKRHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRLinearHashTable::IsUsable(void)const  __ptr64
?IsUsable@CLKRLinearHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRHashTable::IsValid(void)const  __ptr64
?IsValid@CLKRHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRLinearHashTable::IsValid(void)const  __ptr64
?IsValid@CLKRLinearHashTable@@QEBA_NXZ
; public: static int __cdecl CMdVersionInfo::IsWin2k(void)
?IsWin2k@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWin2korLater(void)
?IsWin2korLater@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWin95(void)
?IsWin95@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWin98(void)
?IsWin98@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWin98orLater(void)
?IsWin98orLater@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWin9x(void)
?IsWin9x@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWinNT4(void)
?IsWinNT4@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWinNT(void)
?IsWinNT@CMdVersionInfo@@SAHXZ
; public: static int __cdecl CMdVersionInfo::IsWinNt4orLater(void)
?IsWinNt4orLater@CMdVersionInfo@@SAHXZ
; public: bool __cdecl CCritSec::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CCritSec@@QEBA_NXZ
; public: bool __cdecl CFakeLock::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CFakeLock@@QEBA_NXZ
; public: bool __cdecl CLKRHashTable::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CLKRHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRLinearHashTable::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CLKRLinearHashTable@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock2::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CReaderWriterLock2@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock3::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CReaderWriterLock3@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CReaderWriterLock@@QEBA_NXZ
; public: bool __cdecl CSmallSpinLock::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CSmallSpinLock@@QEBA_NXZ
; public: bool __cdecl CSpinLock::IsWriteLocked(void)const  __ptr64
?IsWriteLocked@CSpinLock@@QEBA_NXZ
; public: bool __cdecl CCritSec::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CCritSec@@QEBA_NXZ
; public: bool __cdecl CFakeLock::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CFakeLock@@QEBA_NXZ
; public: bool __cdecl CLKRHashTable::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CLKRHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRLinearHashTable::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CLKRLinearHashTable@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock2::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CReaderWriterLock2@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock3::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CReaderWriterLock3@@QEBA_NXZ
; public: bool __cdecl CReaderWriterLock::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CReaderWriterLock@@QEBA_NXZ
; public: bool __cdecl CSmallSpinLock::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CSmallSpinLock@@QEBA_NXZ
; public: bool __cdecl CSpinLock::IsWriteUnlocked(void)const  __ptr64
?IsWriteUnlocked@CSpinLock@@QEBA_NXZ
; public: class CListEntry * __ptr64 __cdecl CDoubleList::Last(void)const  __ptr64
?Last@CDoubleList@@QEBAQEAVCListEntry@@XZ
; public: class CListEntry * __ptr64 __cdecl CLockedDoubleList::Last(void) __ptr64
?Last@CLockedDoubleList@@QEAAQEAVCListEntry@@XZ
; public: void __cdecl CLockedDoubleList::Lock(void) __ptr64
?Lock@CLockedDoubleList@@QEAAXXZ
; public: void __cdecl CLockedSingleList::Lock(void) __ptr64
?Lock@CLockedSingleList@@QEAAXXZ
; public: static enum LOCK_LOCKTYPE  __cdecl CLockBase<1,1,3,1,3,2>::LockType(void)
?LockType@?$CLockBase@$00$00$02$00$02$01@@SA?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __cdecl CLockBase<2,1,1,1,3,2>::LockType(void)
?LockType@?$CLockBase@$01$00$00$00$02$01@@SA?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __cdecl CLockBase<3,1,1,1,1,1>::LockType(void)
?LockType@?$CLockBase@$02$00$00$00$00$00@@SA?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __cdecl CLockBase<4,1,1,2,3,3>::LockType(void)
?LockType@?$CLockBase@$03$00$00$01$02$02@@SA?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __cdecl CLockBase<5,2,2,1,3,2>::LockType(void)
?LockType@?$CLockBase@$04$01$01$00$02$01@@SA?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __cdecl CLockBase<6,2,2,1,3,2>::LockType(void)
?LockType@?$CLockBase@$05$01$01$00$02$01@@SA?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __cdecl CLockBase<7,2,1,1,3,2>::LockType(void)
?LockType@?$CLockBase@$06$01$00$00$02$01@@SA?AW4LOCK_LOCKTYPE@@XZ
; public: unsigned long __cdecl CLKRHashTable::MaxSize(void)const  __ptr64
?MaxSize@CLKRHashTable@@QEBAKXZ
; public: unsigned long __cdecl CLKRLinearHashTable::MaxSize(void)const  __ptr64
?MaxSize@CLKRLinearHashTable@@QEBAKXZ
; unsigned __int64 __cdecl MpHeapCompact(void * __ptr64)
?MpHeapCompact@@YA_KPEAX@Z
; public: static enum LOCK_RW_MUTEX  __cdecl CLockBase<1,1,3,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$00$00$02$00$02$01@@SA?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __cdecl CLockBase<2,1,1,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$01$00$00$00$02$01@@SA?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __cdecl CLockBase<3,1,1,1,1,1>::MutexType(void)
?MutexType@?$CLockBase@$02$00$00$00$00$00@@SA?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __cdecl CLockBase<4,1,1,2,3,3>::MutexType(void)
?MutexType@?$CLockBase@$03$00$00$01$02$02@@SA?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __cdecl CLockBase<5,2,2,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$04$01$01$00$02$01@@SA?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __cdecl CLockBase<6,2,2,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$05$01$01$00$02$01@@SA?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __cdecl CLockBase<7,2,1,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$06$01$00$00$02$01@@SA?AW4LOCK_RW_MUTEX@@XZ
; public: int __cdecl CLKRHashTable::NumSubTables(void)const  __ptr64
?NumSubTables@CLKRHashTable@@QEBAHXZ
; public: static enum LK_TABLESIZE  __cdecl CLKRHashTable::NumSubTables(unsigned long & __ptr64,unsigned long & __ptr64)
?NumSubTables@CLKRHashTable@@SA?AW4LK_TABLESIZE@@AEAK0@Z
; public: int __cdecl CLKRLinearHashTable::NumSubTables(void)const  __ptr64
?NumSubTables@CLKRLinearHashTable@@QEBAHXZ
; public: static enum LK_TABLESIZE  __cdecl CLKRLinearHashTable::NumSubTables(unsigned long & __ptr64,unsigned long & __ptr64)
?NumSubTables@CLKRLinearHashTable@@SA?AW4LK_TABLESIZE@@AEAK0@Z
; int __cdecl OnUnicodeSystem(void)
?OnUnicodeSystem@@YAHXZ
; public: static enum LOCK_PERLOCK_SPIN  __cdecl CLockBase<1,1,3,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$00$00$02$00$02$01@@SA?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __cdecl CLockBase<2,1,1,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$01$00$00$00$02$01@@SA?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __cdecl CLockBase<3,1,1,1,1,1>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$02$00$00$00$00$00@@SA?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __cdecl CLockBase<4,1,1,2,3,3>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$03$00$00$01$02$02@@SA?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __cdecl CLockBase<5,2,2,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$04$01$01$00$02$01@@SA?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __cdecl CLockBase<6,2,2,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$05$01$01$00$02$01@@SA?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __cdecl CLockBase<7,2,1,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$06$01$00$00$02$01@@SA?AW4LOCK_PERLOCK_SPIN@@XZ
; public: class CSingleListEntry * __ptr64 __cdecl CLockedSingleList::Pop(void) __ptr64
?Pop@CLockedSingleList@@QEAAQEAVCSingleListEntry@@XZ
; public: class CSingleListEntry * __ptr64 __cdecl CSingleList::Pop(void) __ptr64
?Pop@CSingleList@@QEAAQEAVCSingleListEntry@@XZ
; public: void __cdecl CLKRHashTable::Print(void)const  __ptr64
?Print@CLKRHashTable@@QEBAXXZ
; public: void __cdecl CLKRLinearHashTable::Print(void)const  __ptr64
?Print@CLKRLinearHashTable@@QEBAXXZ
; public: void __cdecl CLockedSingleList::Push(class CSingleListEntry * __ptr64 const) __ptr64
?Push@CLockedSingleList@@QEAAXQEAVCSingleListEntry@@@Z
; public: void __cdecl CSingleList::Push(class CSingleListEntry * __ptr64 const) __ptr64
?Push@CSingleList@@QEAAXQEAVCSingleListEntry@@@Z
; public: static enum LOCK_QUEUE_TYPE  __cdecl CLockBase<1,1,3,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$00$00$02$00$02$01@@SA?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __cdecl CLockBase<2,1,1,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$01$00$00$00$02$01@@SA?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __cdecl CLockBase<3,1,1,1,1,1>::QueueType(void)
?QueueType@?$CLockBase@$02$00$00$00$00$00@@SA?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __cdecl CLockBase<4,1,1,2,3,3>::QueueType(void)
?QueueType@?$CLockBase@$03$00$00$01$02$02@@SA?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __cdecl CLockBase<5,2,2,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$04$01$01$00$02$01@@SA?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __cdecl CLockBase<6,2,2,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$05$01$01$00$02$01@@SA?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __cdecl CLockBase<7,2,1,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$06$01$00$00$02$01@@SA?AW4LOCK_QUEUE_TYPE@@XZ
; public: void __cdecl CCritSec::ReadLock(void) __ptr64
?ReadLock@CCritSec@@QEAAXXZ
; public: void __cdecl CFakeLock::ReadLock(void) __ptr64
?ReadLock@CFakeLock@@QEAAXXZ
; public: void __cdecl CLKRHashTable::ReadLock(void)const  __ptr64
?ReadLock@CLKRHashTable@@QEBAXXZ
; public: void __cdecl CLKRLinearHashTable::ReadLock(void)const  __ptr64
?ReadLock@CLKRLinearHashTable@@QEBAXXZ
; public: void __cdecl CReaderWriterLock2::ReadLock(void) __ptr64
?ReadLock@CReaderWriterLock2@@QEAAXXZ
; public: void __cdecl CReaderWriterLock3::ReadLock(void) __ptr64
?ReadLock@CReaderWriterLock3@@QEAAXXZ
; public: void __cdecl CReaderWriterLock::ReadLock(void) __ptr64
?ReadLock@CReaderWriterLock@@QEAAXXZ
; public: void __cdecl CSmallSpinLock::ReadLock(void) __ptr64
?ReadLock@CSmallSpinLock@@QEAAXXZ
; public: void __cdecl CSpinLock::ReadLock(void) __ptr64
?ReadLock@CSpinLock@@QEAAXXZ
; public: bool __cdecl CCritSec::ReadOrWriteLock(void) __ptr64
?ReadOrWriteLock@CCritSec@@QEAA_NXZ
; public: bool __cdecl CFakeLock::ReadOrWriteLock(void) __ptr64
?ReadOrWriteLock@CFakeLock@@QEAA_NXZ
; public: bool __cdecl CReaderWriterLock3::ReadOrWriteLock(void) __ptr64
?ReadOrWriteLock@CReaderWriterLock3@@QEAA_NXZ
; public: bool __cdecl CSpinLock::ReadOrWriteLock(void) __ptr64
?ReadOrWriteLock@CSpinLock@@QEAA_NXZ
; public: void __cdecl CCritSec::ReadOrWriteUnlock(bool) __ptr64
?ReadOrWriteUnlock@CCritSec@@QEAAX_N@Z
; public: void __cdecl CFakeLock::ReadOrWriteUnlock(bool) __ptr64
?ReadOrWriteUnlock@CFakeLock@@QEAAX_N@Z
; public: void __cdecl CReaderWriterLock3::ReadOrWriteUnlock(bool) __ptr64
?ReadOrWriteUnlock@CReaderWriterLock3@@QEAAX_N@Z
; public: void __cdecl CSpinLock::ReadOrWriteUnlock(bool) __ptr64
?ReadOrWriteUnlock@CSpinLock@@QEAAX_N@Z
; public: void __cdecl CCritSec::ReadUnlock(void) __ptr64
?ReadUnlock@CCritSec@@QEAAXXZ
; public: void __cdecl CFakeLock::ReadUnlock(void) __ptr64
?ReadUnlock@CFakeLock@@QEAAXXZ
; public: void __cdecl CLKRHashTable::ReadUnlock(void)const  __ptr64
?ReadUnlock@CLKRHashTable@@QEBAXXZ
; public: void __cdecl CLKRLinearHashTable::ReadUnlock(void)const  __ptr64
?ReadUnlock@CLKRLinearHashTable@@QEBAXXZ
; public: void __cdecl CReaderWriterLock2::ReadUnlock(void) __ptr64
?ReadUnlock@CReaderWriterLock2@@QEAAXXZ
; public: void __cdecl CReaderWriterLock3::ReadUnlock(void) __ptr64
?ReadUnlock@CReaderWriterLock3@@QEAAXXZ
; public: void __cdecl CReaderWriterLock::ReadUnlock(void) __ptr64
?ReadUnlock@CReaderWriterLock@@QEAAXXZ
; public: void __cdecl CSmallSpinLock::ReadUnlock(void) __ptr64
?ReadUnlock@CSmallSpinLock@@QEAAXXZ
; public: void __cdecl CSpinLock::ReadUnlock(void) __ptr64
?ReadUnlock@CSpinLock@@QEAAXXZ
; public: static enum LOCK_RECURSION  __cdecl CLockBase<1,1,3,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$00$00$02$00$02$01@@SA?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __cdecl CLockBase<2,1,1,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$01$00$00$00$02$01@@SA?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __cdecl CLockBase<3,1,1,1,1,1>::Recursion(void)
?Recursion@?$CLockBase@$02$00$00$00$00$00@@SA?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __cdecl CLockBase<4,1,1,2,3,3>::Recursion(void)
?Recursion@?$CLockBase@$03$00$00$01$02$02@@SA?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __cdecl CLockBase<5,2,2,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$04$01$01$00$02$01@@SA?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __cdecl CLockBase<6,2,2,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$05$01$01$00$02$01@@SA?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __cdecl CLockBase<7,2,1,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$06$01$00$00$02$01@@SA?AW4LOCK_RECURSION@@XZ
; public: static void __cdecl CMdVersionInfo::ReleaseVersionInfo(void)
?ReleaseVersionInfo@CMdVersionInfo@@SAXXZ
; public: static void __cdecl CDoubleList::RemoveEntry(class CListEntry * __ptr64 const)
?RemoveEntry@CDoubleList@@SAXQEAVCListEntry@@@Z
; public: void __cdecl CLockedDoubleList::RemoveEntry(class CListEntry * __ptr64 const) __ptr64
?RemoveEntry@CLockedDoubleList@@QEAAXQEAVCListEntry@@@Z
; public: class CListEntry * __ptr64 __cdecl CDoubleList::RemoveHead(void) __ptr64
?RemoveHead@CDoubleList@@QEAAQEAVCListEntry@@XZ
; public: class CListEntry * __ptr64 __cdecl CLockedDoubleList::RemoveHead(void) __ptr64
?RemoveHead@CLockedDoubleList@@QEAAQEAVCListEntry@@XZ
; public: class CListEntry * __ptr64 __cdecl CDoubleList::RemoveTail(void) __ptr64
?RemoveTail@CDoubleList@@QEAAQEAVCListEntry@@XZ
; public: class CListEntry * __ptr64 __cdecl CLockedDoubleList::RemoveTail(void) __ptr64
?RemoveTail@CLockedDoubleList@@QEAAQEAVCListEntry@@XZ
; public: long __cdecl CEXAutoBackupFile::RestoreFile(void) __ptr64
?RestoreFile@CEXAutoBackupFile@@QEAAJXZ
; public: void __cdecl CLKRHashTable::SetBucketLockSpinCount(unsigned short) __ptr64
?SetBucketLockSpinCount@CLKRHashTable@@QEAAXG@Z
; public: void __cdecl CLKRLinearHashTable::SetBucketLockSpinCount(unsigned short) __ptr64
?SetBucketLockSpinCount@CLKRLinearHashTable@@QEAAXG@Z
; public: static void __cdecl CCritSec::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CCritSec@@SAXN@Z
; public: static void __cdecl CFakeLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CFakeLock@@SAXN@Z
; public: static void __cdecl CReaderWriterLock2::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CReaderWriterLock2@@SAXN@Z
; public: static void __cdecl CReaderWriterLock3::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CReaderWriterLock3@@SAXN@Z
; public: static void __cdecl CReaderWriterLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CReaderWriterLock@@SAXN@Z
; public: static void __cdecl CSmallSpinLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CSmallSpinLock@@SAXN@Z
; public: static void __cdecl CSpinLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CSpinLock@@SAXN@Z
; public: static void __cdecl CCritSec::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CCritSec@@SAXG@Z
; public: static void __cdecl CFakeLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CFakeLock@@SAXG@Z
; public: static void __cdecl CReaderWriterLock2::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CReaderWriterLock2@@SAXG@Z
; public: static void __cdecl CReaderWriterLock3::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CReaderWriterLock3@@SAXG@Z
; public: static void __cdecl CReaderWriterLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CReaderWriterLock@@SAXG@Z
; public: static void __cdecl CSmallSpinLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CSmallSpinLock@@SAXG@Z
; public: static void __cdecl CSpinLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CSpinLock@@SAXG@Z
; public: bool __cdecl CCritSec::SetSpinCount(unsigned short) __ptr64
?SetSpinCount@CCritSec@@QEAA_NG@Z
; public: static unsigned long __cdecl CCritSec::SetSpinCount(class CCriticalSection * __ptr64 * __ptr64,unsigned long)
?SetSpinCount@CCritSec@@SAKPEAPEAVCCriticalSection@@K@Z
; public: bool __cdecl CFakeLock::SetSpinCount(unsigned short) __ptr64
?SetSpinCount@CFakeLock@@QEAA_NG@Z
; public: bool __cdecl CReaderWriterLock2::SetSpinCount(unsigned short) __ptr64
?SetSpinCount@CReaderWriterLock2@@QEAA_NG@Z
; public: bool __cdecl CReaderWriterLock3::SetSpinCount(unsigned short) __ptr64
?SetSpinCount@CReaderWriterLock3@@QEAA_NG@Z
; public: bool __cdecl CReaderWriterLock::SetSpinCount(unsigned short) __ptr64
?SetSpinCount@CReaderWriterLock@@QEAA_NG@Z
; public: bool __cdecl CSmallSpinLock::SetSpinCount(unsigned short) __ptr64
?SetSpinCount@CSmallSpinLock@@QEAA_NG@Z
; public: bool __cdecl CSpinLock::SetSpinCount(unsigned short) __ptr64
?SetSpinCount@CSpinLock@@QEAA_NG@Z
; public: void __cdecl CLKRHashTable::SetTableLockSpinCount(unsigned short) __ptr64
?SetTableLockSpinCount@CLKRHashTable@@QEAAXG@Z
; public: void __cdecl CLKRLinearHashTable::SetTableLockSpinCount(unsigned short) __ptr64
?SetTableLockSpinCount@CLKRLinearHashTable@@QEAAXG@Z
; public: unsigned long __cdecl CLKRHashTable::Size(void)const  __ptr64
?Size@CLKRHashTable@@QEBAKXZ
; public: unsigned long __cdecl CLKRLinearHashTable::Size(void)const  __ptr64
?Size@CLKRLinearHashTable@@QEBAKXZ
; public: bool __cdecl CCritSec::TryReadLock(void) __ptr64
?TryReadLock@CCritSec@@QEAA_NXZ
; public: bool __cdecl CFakeLock::TryReadLock(void) __ptr64
?TryReadLock@CFakeLock@@QEAA_NXZ
; public: bool __cdecl CReaderWriterLock2::TryReadLock(void) __ptr64
?TryReadLock@CReaderWriterLock2@@QEAA_NXZ
; public: bool __cdecl CReaderWriterLock3::TryReadLock(void) __ptr64
?TryReadLock@CReaderWriterLock3@@QEAA_NXZ
; public: bool __cdecl CReaderWriterLock::TryReadLock(void) __ptr64
?TryReadLock@CReaderWriterLock@@QEAA_NXZ
; public: bool __cdecl CSmallSpinLock::TryReadLock(void) __ptr64
?TryReadLock@CSmallSpinLock@@QEAA_NXZ
; public: bool __cdecl CSpinLock::TryReadLock(void) __ptr64
?TryReadLock@CSpinLock@@QEAA_NXZ
; public: bool __cdecl CCritSec::TryWriteLock(void) __ptr64
?TryWriteLock@CCritSec@@QEAA_NXZ
; public: bool __cdecl CFakeLock::TryWriteLock(void) __ptr64
?TryWriteLock@CFakeLock@@QEAA_NXZ
; public: bool __cdecl CReaderWriterLock2::TryWriteLock(void) __ptr64
?TryWriteLock@CReaderWriterLock2@@QEAA_NXZ
; public: bool __cdecl CReaderWriterLock3::TryWriteLock(void) __ptr64
?TryWriteLock@CReaderWriterLock3@@QEAA_NXZ
; public: bool __cdecl CReaderWriterLock::TryWriteLock(void) __ptr64
?TryWriteLock@CReaderWriterLock@@QEAA_NXZ
; public: bool __cdecl CSmallSpinLock::TryWriteLock(void) __ptr64
?TryWriteLock@CSmallSpinLock@@QEAA_NXZ
; public: bool __cdecl CSpinLock::TryWriteLock(void) __ptr64
?TryWriteLock@CSpinLock@@QEAA_NXZ
; public: long __cdecl CEXAutoBackupFile::UndoBackup(void) __ptr64
?UndoBackup@CEXAutoBackupFile@@QEAAJXZ
; public: void __cdecl CLockedDoubleList::Unlock(void) __ptr64
?Unlock@CLockedDoubleList@@QEAAXXZ
; public: void __cdecl CLockedSingleList::Unlock(void) __ptr64
?Unlock@CLockedSingleList@@QEAAXXZ
; public: bool __cdecl CLKRHashTable::ValidSignature(void)const  __ptr64
?ValidSignature@CLKRHashTable@@QEBA_NXZ
; public: bool __cdecl CLKRLinearHashTable::ValidSignature(void)const  __ptr64
?ValidSignature@CLKRLinearHashTable@@QEBA_NXZ
; public: static enum LOCK_WAIT_TYPE  __cdecl CLockBase<1,1,3,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$00$00$02$00$02$01@@SA?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __cdecl CLockBase<2,1,1,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$01$00$00$00$02$01@@SA?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __cdecl CLockBase<3,1,1,1,1,1>::WaitType(void)
?WaitType@?$CLockBase@$02$00$00$00$00$00@@SA?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __cdecl CLockBase<4,1,1,2,3,3>::WaitType(void)
?WaitType@?$CLockBase@$03$00$00$01$02$02@@SA?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __cdecl CLockBase<5,2,2,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$04$01$01$00$02$01@@SA?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __cdecl CLockBase<6,2,2,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$05$01$01$00$02$01@@SA?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __cdecl CLockBase<7,2,1,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$06$01$00$00$02$01@@SA?AW4LOCK_WAIT_TYPE@@XZ
; public: void __cdecl CCritSec::WriteLock(void) __ptr64
?WriteLock@CCritSec@@QEAAXXZ
; public: void __cdecl CFakeLock::WriteLock(void) __ptr64
?WriteLock@CFakeLock@@QEAAXXZ
; public: void __cdecl CLKRHashTable::WriteLock(void) __ptr64
?WriteLock@CLKRHashTable@@QEAAXXZ
; public: void __cdecl CLKRLinearHashTable::WriteLock(void) __ptr64
?WriteLock@CLKRLinearHashTable@@QEAAXXZ
; public: void __cdecl CReaderWriterLock2::WriteLock(void) __ptr64
?WriteLock@CReaderWriterLock2@@QEAAXXZ
; public: void __cdecl CReaderWriterLock3::WriteLock(void) __ptr64
?WriteLock@CReaderWriterLock3@@QEAAXXZ
; public: void __cdecl CReaderWriterLock::WriteLock(void) __ptr64
?WriteLock@CReaderWriterLock@@QEAAXXZ
; public: void __cdecl CSmallSpinLock::WriteLock(void) __ptr64
?WriteLock@CSmallSpinLock@@QEAAXXZ
; public: void __cdecl CSpinLock::WriteLock(void) __ptr64
?WriteLock@CSpinLock@@QEAAXXZ
; public: void __cdecl CCritSec::WriteUnlock(void) __ptr64
?WriteUnlock@CCritSec@@QEAAXXZ
; public: void __cdecl CFakeLock::WriteUnlock(void) __ptr64
?WriteUnlock@CFakeLock@@QEAAXXZ
; public: void __cdecl CLKRHashTable::WriteUnlock(void)const  __ptr64
?WriteUnlock@CLKRHashTable@@QEBAXXZ
; public: void __cdecl CLKRLinearHashTable::WriteUnlock(void)const  __ptr64
?WriteUnlock@CLKRLinearHashTable@@QEBAXXZ
; public: void __cdecl CReaderWriterLock2::WriteUnlock(void) __ptr64
?WriteUnlock@CReaderWriterLock2@@QEAAXXZ
; public: void __cdecl CReaderWriterLock3::WriteUnlock(void) __ptr64
?WriteUnlock@CReaderWriterLock3@@QEAAXXZ
; public: void __cdecl CReaderWriterLock::WriteUnlock(void) __ptr64
?WriteUnlock@CReaderWriterLock@@QEAAXXZ
; public: void __cdecl CSmallSpinLock::WriteUnlock(void) __ptr64
?WriteUnlock@CSmallSpinLock@@QEAAXXZ
; public: void __cdecl CSpinLock::WriteUnlock(void) __ptr64
?WriteUnlock@CSpinLock@@QEAAXXZ
; private: void __cdecl CLKRLinearHashTable::_AddRefRecord(void const * __ptr64,int)const  __ptr64
?_AddRefRecord@CLKRLinearHashTable@@AEBAXPEBXH@Z
; private: static class CLKRLinearHashTable::CNodeClump * __ptr64 __cdecl CLKRLinearHashTable::_AllocateNodeClump(void)
?_AllocateNodeClump@CLKRLinearHashTable@@CAQEAVCNodeClump@1@XZ
; private: class CLKRLinearHashTable::CSegment * __ptr64 __cdecl CLKRLinearHashTable::_AllocateSegment(void)const  __ptr64
?_AllocateSegment@CLKRLinearHashTable@@AEBAQEAVCSegment@1@XZ
; private: static class CLKRLinearHashTable::CDirEntry * __ptr64 __cdecl CLKRLinearHashTable::_AllocateSegmentDirectory(unsigned __int64)
?_AllocateSegmentDirectory@CLKRLinearHashTable@@CAQEAVCDirEntry@1@_K@Z
; private: static class CLKRLinearHashTable * __ptr64 __cdecl CLKRHashTable::_AllocateSubTable(char const * __ptr64,unsigned __int64 const  (__cdecl*)(void const * __ptr64),unsigned long (__cdecl*)(unsigned __int64),bool (__cdecl*)(unsigned __int64,unsigned __int64),void (__cdecl*)(void const * __ptr64,int),double,unsigned long,class CLKRHashTable * __ptr64)
?_AllocateSubTable@CLKRHashTable@@CAQEAVCLKRLinearHashTable@@PEBDP6A?B_KPEBX@ZP6AK_K@ZP6A_N33@ZP6AX1H@ZNKPEAV1@@Z
; private: static class CLKRLinearHashTable * __ptr64 * __ptr64 __cdecl CLKRHashTable::_AllocateSubTableArray(unsigned __int64)
?_AllocateSubTableArray@CLKRHashTable@@CAQEAPEAVCLKRLinearHashTable@@_K@Z
; private: unsigned long __cdecl CLKRLinearHashTable::_Apply(enum LK_ACTION  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64,enum LK_LOCKTYPE,enum LK_PREDICATE & __ptr64) __ptr64
?_Apply@CLKRLinearHashTable@@AEAAKP6A?AW4LK_ACTION@@PEBXPEAX@Z1W4LK_LOCKTYPE@@AEAW4LK_PREDICATE@@@Z
; private: unsigned long __cdecl CLKRLinearHashTable::_ApplyIf(enum LK_PREDICATE  (__cdecl*)(void const * __ptr64,void * __ptr64),enum LK_ACTION  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64,enum LK_LOCKTYPE,enum LK_PREDICATE & __ptr64) __ptr64
?_ApplyIf@CLKRLinearHashTable@@AEAAKP6A?AW4LK_PREDICATE@@PEBXPEAX@ZP6A?AW4LK_ACTION@@01@Z1W4LK_LOCKTYPE@@AEAW42@@Z
; private: class CLKRLinearHashTable::CBucket * __ptr64 __cdecl CLKRLinearHashTable::_Bucket(unsigned long)const  __ptr64
?_Bucket@CLKRLinearHashTable@@AEBAPEAVCBucket@1@K@Z
; private: unsigned long __cdecl CLKRLinearHashTable::_BucketAddress(unsigned long)const  __ptr64
?_BucketAddress@CLKRLinearHashTable@@AEBAKK@Z
; private: unsigned long __cdecl CLKRHashTable::_CalcKeyHash(unsigned __int64)const  __ptr64
?_CalcKeyHash@CLKRHashTable@@AEBAK_K@Z
; private: unsigned long __cdecl CLKRLinearHashTable::_CalcKeyHash(unsigned __int64)const  __ptr64
?_CalcKeyHash@CLKRLinearHashTable@@AEBAK_K@Z
; private: void __cdecl CLKRLinearHashTable::_Clear(bool) __ptr64
?_Clear@CLKRLinearHashTable@@AEAAX_N@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_CloseIterator(class CLKRLinearHashTable::CIterator * __ptr64) __ptr64
?_CloseIterator@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; private: bool __cdecl CReaderWriterLock2::_CmpExch(long,long) __ptr64
?_CmpExch@CReaderWriterLock2@@AEAA_NJJ@Z
; private: bool __cdecl CReaderWriterLock3::_CmpExch(long,long) __ptr64
?_CmpExch@CReaderWriterLock3@@AEAA_NJJ@Z
; private: bool __cdecl CReaderWriterLock::_CmpExch(long,long) __ptr64
?_CmpExch@CReaderWriterLock@@AEAA_NJJ@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_Contract(void) __ptr64
?_Contract@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@XZ
; private: static long __cdecl CReaderWriterLock3::_CurrentThreadId(void)
?_CurrentThreadId@CReaderWriterLock3@@CAJXZ
; private: static long __cdecl CSmallSpinLock::_CurrentThreadId(void)
?_CurrentThreadId@CSmallSpinLock@@CAJXZ
; private: static long __cdecl CSpinLock::_CurrentThreadId(void)
?_CurrentThreadId@CSpinLock@@CAJXZ
; private: unsigned long __cdecl CLKRLinearHashTable::_DeleteIf(enum LK_PREDICATE  (__cdecl*)(void const * __ptr64,void * __ptr64),void * __ptr64,enum LK_PREDICATE & __ptr64) __ptr64
?_DeleteIf@CLKRLinearHashTable@@AEAAKP6A?AW4LK_PREDICATE@@PEBXPEAX@Z1AEAW42@@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_DeleteKey(unsigned __int64,unsigned long) __ptr64
?_DeleteKey@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@_KK@Z
; private: bool __cdecl CLKRLinearHashTable::_DeleteNode(class CLKRLinearHashTable::CBucket * __ptr64,class CLKRLinearHashTable::CNodeClump * __ptr64 & __ptr64,class CLKRLinearHashTable::CNodeClump * __ptr64 & __ptr64,int & __ptr64) __ptr64
?_DeleteNode@CLKRLinearHashTable@@AEAA_NPEAVCBucket@1@AEAPEAVCNodeClump@1@1AEAH@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_DeleteRecord(void const * __ptr64,unsigned long) __ptr64
?_DeleteRecord@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@PEBXK@Z
; private: bool __cdecl CLKRLinearHashTable::_EqualKeys(unsigned __int64,unsigned __int64)const  __ptr64
?_EqualKeys@CLKRLinearHashTable@@AEBA_N_K0@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_Expand(void) __ptr64
?_Expand@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@XZ
; private: unsigned __int64 const  __cdecl CLKRHashTable::_ExtractKey(void const * __ptr64)const  __ptr64
?_ExtractKey@CLKRHashTable@@AEBA?B_KPEBX@Z
; private: unsigned __int64 const  __cdecl CLKRLinearHashTable::_ExtractKey(void const * __ptr64)const  __ptr64
?_ExtractKey@CLKRLinearHashTable@@AEBA?B_KPEBX@Z
; private: class CLKRLinearHashTable::CBucket * __ptr64 __cdecl CLKRLinearHashTable::_FindBucket(unsigned long,bool)const  __ptr64
?_FindBucket@CLKRLinearHashTable@@AEBAPEAVCBucket@1@K_N@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_FindKey(unsigned __int64,unsigned long,void const * __ptr64 * __ptr64)const  __ptr64
?_FindKey@CLKRLinearHashTable@@AEBA?AW4LK_RETCODE@@_KKPEAPEBX@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_FindRecord(void const * __ptr64,unsigned long)const  __ptr64
?_FindRecord@CLKRLinearHashTable@@AEBA?AW4LK_RETCODE@@PEBXK@Z
; private: static bool __cdecl CLKRLinearHashTable::_FreeNodeClump(class CLKRLinearHashTable::CNodeClump * __ptr64)
?_FreeNodeClump@CLKRLinearHashTable@@CA_NPEAVCNodeClump@1@@Z
; private: bool __cdecl CLKRLinearHashTable::_FreeSegment(class CLKRLinearHashTable::CSegment * __ptr64)const  __ptr64
?_FreeSegment@CLKRLinearHashTable@@AEBA_NPEAVCSegment@1@@Z
; private: static bool __cdecl CLKRLinearHashTable::_FreeSegmentDirectory(class CLKRLinearHashTable::CDirEntry * __ptr64)
?_FreeSegmentDirectory@CLKRLinearHashTable@@CA_NPEAVCDirEntry@1@@Z
; private: static bool __cdecl CLKRHashTable::_FreeSubTable(class CLKRLinearHashTable * __ptr64)
?_FreeSubTable@CLKRHashTable@@CA_NPEAVCLKRLinearHashTable@@@Z
; private: static bool __cdecl CLKRHashTable::_FreeSubTableArray(class CLKRLinearHashTable * __ptr64 * __ptr64)
?_FreeSubTableArray@CLKRHashTable@@CA_NPEAPEAVCLKRLinearHashTable@@@Z
; private: unsigned long __cdecl CLKRLinearHashTable::_H0(unsigned long)const  __ptr64
?_H0@CLKRLinearHashTable@@AEBAKK@Z
; private: static unsigned long __cdecl CLKRLinearHashTable::_H0(unsigned long,unsigned long)
?_H0@CLKRLinearHashTable@@CAKKK@Z
; private: unsigned long __cdecl CLKRLinearHashTable::_H1(unsigned long)const  __ptr64
?_H1@CLKRLinearHashTable@@AEBAKK@Z
; private: static unsigned long __cdecl CLKRLinearHashTable::_H1(unsigned long,unsigned long)
?_H1@CLKRLinearHashTable@@CAKKK@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_Initialize(unsigned __int64 const  (__cdecl*)(void const * __ptr64),unsigned long (__cdecl*)(unsigned __int64),bool (__cdecl*)(unsigned __int64,unsigned __int64),void (__cdecl*)(void const * __ptr64,int),char const * __ptr64,double,unsigned long) __ptr64
?_Initialize@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@P6A?B_KPEBX@ZP6AK_K@ZP6A_N22@ZP6AX0H@ZPEBDNK@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_InitializeIterator(class CLKRLinearHashTable::CIterator * __ptr64) __ptr64
?_InitializeIterator@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@PEAVCIterator@1@@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_InsertRecord(void const * __ptr64,unsigned long,bool) __ptr64
?_InsertRecord@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@PEBXK_N@Z
; private: void __cdecl CLKRHashTable::_InsertThisIntoGlobalList(void) __ptr64
?_InsertThisIntoGlobalList@CLKRHashTable@@AEAAXXZ
; private: void __cdecl CLKRLinearHashTable::_InsertThisIntoGlobalList(void) __ptr64
?_InsertThisIntoGlobalList@CLKRLinearHashTable@@AEAAXXZ
; private: bool __cdecl CSpinLock::_IsLocked(void)const  __ptr64
?_IsLocked@CSpinLock@@AEBA_NXZ
; private: int __cdecl CLKRLinearHashTable::_IsNodeCompact(class CLKRLinearHashTable::CBucket * __ptr64 const)const  __ptr64
?_IsNodeCompact@CLKRLinearHashTable@@AEBAHQEAVCBucket@1@@Z
; private: void __cdecl CSpinLock::_Lock(void) __ptr64
?_Lock@CSpinLock@@AEAAXXZ
; private: void __cdecl CReaderWriterLock2::_LockSpin(bool) __ptr64
?_LockSpin@CReaderWriterLock2@@AEAAX_N@Z
; private: void __cdecl CReaderWriterLock3::_LockSpin(enum CReaderWriterLock3::SPIN_TYPE) __ptr64
?_LockSpin@CReaderWriterLock3@@AEAAXW4SPIN_TYPE@1@@Z
; private: void __cdecl CReaderWriterLock::_LockSpin(bool) __ptr64
?_LockSpin@CReaderWriterLock@@AEAAX_N@Z
; private: void __cdecl CSmallSpinLock::_LockSpin(void) __ptr64
?_LockSpin@CSmallSpinLock@@AEAAXXZ
; private: void __cdecl CSpinLock::_LockSpin(void) __ptr64
?_LockSpin@CSpinLock@@AEAAXXZ
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_MergeRecordSets(class CLKRLinearHashTable::CBucket * __ptr64,class CLKRLinearHashTable::CNodeClump * __ptr64,class CLKRLinearHashTable::CNodeClump * __ptr64) __ptr64
?_MergeRecordSets@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@PEAVCBucket@1@PEAVCNodeClump@1@1@Z
; private: static enum LK_PREDICATE  __cdecl CLKRLinearHashTable::_PredTrue(void const * __ptr64,void * __ptr64)
?_PredTrue@CLKRLinearHashTable@@CA?AW4LK_PREDICATE@@PEBXPEAX@Z
; private: void __cdecl CReaderWriterLock2::_ReadLockSpin(void) __ptr64
?_ReadLockSpin@CReaderWriterLock2@@AEAAXXZ
; private: void __cdecl CReaderWriterLock3::_ReadLockSpin(enum CReaderWriterLock3::SPIN_TYPE) __ptr64
?_ReadLockSpin@CReaderWriterLock3@@AEAAXW4SPIN_TYPE@1@@Z
; private: void __cdecl CReaderWriterLock::_ReadLockSpin(void) __ptr64
?_ReadLockSpin@CReaderWriterLock@@AEAAXXZ
; private: bool __cdecl CLKRLinearHashTable::_ReadOrWriteLock(void)const  __ptr64
?_ReadOrWriteLock@CLKRLinearHashTable@@AEBA_NXZ
; private: void __cdecl CLKRLinearHashTable::_ReadOrWriteUnlock(bool)const  __ptr64
?_ReadOrWriteUnlock@CLKRLinearHashTable@@AEBAX_N@Z
; private: void __cdecl CLKRHashTable::_RemoveThisFromGlobalList(void) __ptr64
?_RemoveThisFromGlobalList@CLKRHashTable@@AEAAXXZ
; private: void __cdecl CLKRLinearHashTable::_RemoveThisFromGlobalList(void) __ptr64
?_RemoveThisFromGlobalList@CLKRLinearHashTable@@AEAAXXZ
; private: unsigned long __cdecl CLKRLinearHashTable::_SegIndex(unsigned long)const  __ptr64
?_SegIndex@CLKRLinearHashTable@@AEBAKK@Z
; private: class CLKRLinearHashTable::CSegment * __ptr64 & __ptr64 __cdecl CLKRLinearHashTable::_Segment(unsigned long)const  __ptr64
?_Segment@CLKRLinearHashTable@@AEBAAEAPEAVCSegment@1@K@Z
; private: void __cdecl CLKRLinearHashTable::_SetSegVars(enum LK_TABLESIZE) __ptr64
?_SetSegVars@CLKRLinearHashTable@@AEAAXW4LK_TABLESIZE@@@Z
; private: enum LK_RETCODE  __cdecl CLKRLinearHashTable::_SplitRecordSet(class CLKRLinearHashTable::CNodeClump * __ptr64,class CLKRLinearHashTable::CNodeClump * __ptr64,unsigned long,unsigned long,unsigned long,class CLKRLinearHashTable::CNodeClump * __ptr64) __ptr64
?_SplitRecordSet@CLKRLinearHashTable@@AEAA?AW4LK_RETCODE@@PEAVCNodeClump@1@0KKK0@Z
; private: class CLKRLinearHashTable * __ptr64 __cdecl CLKRHashTable::_SubTable(unsigned long)const  __ptr64
?_SubTable@CLKRHashTable@@AEBAPEAVCLKRLinearHashTable@@K@Z
; private: bool __cdecl CSmallSpinLock::_TryLock(void) __ptr64
?_TryLock@CSmallSpinLock@@AEAA_NXZ
; private: bool __cdecl CSpinLock::_TryLock(void) __ptr64
?_TryLock@CSpinLock@@AEAA_NXZ
; private: bool __cdecl CReaderWriterLock2::_TryReadLock(void) __ptr64
?_TryReadLock@CReaderWriterLock2@@AEAA_NXZ
; private: bool __cdecl CReaderWriterLock3::_TryReadLock(void) __ptr64
?_TryReadLock@CReaderWriterLock3@@AEAA_NXZ
; private: bool __cdecl CReaderWriterLock::_TryReadLock(void) __ptr64
?_TryReadLock@CReaderWriterLock@@AEAA_NXZ
; private: bool __cdecl CReaderWriterLock3::_TryReadLockRecursive(void) __ptr64
?_TryReadLockRecursive@CReaderWriterLock3@@AEAA_NXZ
; private: bool __cdecl CReaderWriterLock3::_TryWriteLock2(void) __ptr64
?_TryWriteLock2@CReaderWriterLock3@@AEAA_NXZ
; private: bool __cdecl CReaderWriterLock2::_TryWriteLock(long) __ptr64
?_TryWriteLock@CReaderWriterLock2@@AEAA_NJ@Z
; private: bool __cdecl CReaderWriterLock3::_TryWriteLock(long) __ptr64
?_TryWriteLock@CReaderWriterLock3@@AEAA_NJ@Z
; private: bool __cdecl CReaderWriterLock::_TryWriteLock(void) __ptr64
?_TryWriteLock@CReaderWriterLock@@AEAA_NXZ
; private: void __cdecl CSpinLock::_Unlock(void) __ptr64
?_Unlock@CSpinLock@@AEAAXXZ
; private: void __cdecl CReaderWriterLock2::_WriteLockSpin(void) __ptr64
?_WriteLockSpin@CReaderWriterLock2@@AEAAXXZ
; private: void __cdecl CReaderWriterLock3::_WriteLockSpin(void) __ptr64
?_WriteLockSpin@CReaderWriterLock3@@AEAAXXZ
; private: void __cdecl CReaderWriterLock::_WriteLockSpin(void) __ptr64
?_WriteLockSpin@CReaderWriterLock@@AEAAXXZ
; private: long __cdecl CExFileOperation::_getFileSecurity(unsigned short const * __ptr64) __ptr64
?_getFileSecurity@CExFileOperation@@AEAAJPEBG@Z
; private: long __cdecl CExFileOperation::_setFileSecurity(unsigned short const * __ptr64) __ptr64
?_setFileSecurity@CExFileOperation@@AEAAJPEBG@Z
; public: int __cdecl CEXAutoBackupFile::fHaveBackup(void) __ptr64
?fHaveBackup@CEXAutoBackupFile@@QEAAHXZ
; long const * const  `public: static long const * __ptr64 __cdecl CLKRHashTableStats::BucketSizes(void)'::`2'::s_aBucketSizes
?s_aBucketSizes@?1??BucketSizes@CLKRHashTableStats@@SAPEBJXZ@4QBJB
; protected: static double  CCritSec::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CCritSec@@1NA DATA
; protected: static double  CFakeLock::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CFakeLock@@1NA DATA
; protected: static double  CReaderWriterLock2::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CReaderWriterLock2@@1NA DATA
; protected: static double  CReaderWriterLock3::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CReaderWriterLock3@@1NA DATA
; protected: static double  CReaderWriterLock::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CReaderWriterLock@@1NA DATA
; protected: static double  CSmallSpinLock::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CSmallSpinLock@@1NA DATA
; protected: static double  CSpinLock::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CSpinLock@@1NA DATA
; private: static class CLockedDoubleList  CLKRHashTable::sm_llGlobalList
?sm_llGlobalList@CLKRHashTable@@0VCLockedDoubleList@@A DATA
; private: static class CLockedDoubleList  CLKRLinearHashTable::sm_llGlobalList
?sm_llGlobalList@CLKRLinearHashTable@@0VCLockedDoubleList@@A DATA
; private: static struct _OSVERSIONINFOW * __ptr64  __ptr64 CMdVersionInfo::sm_lpOSVERSIONINFO
?sm_lpOSVERSIONINFO@CMdVersionInfo@@0PEAU_OSVERSIONINFOW@@EA DATA
; private: static unsigned long (__cdecl* __ptr64 CCriticalSection::sm_pfnSetCriticalSectionSpinCount)(struct _RTL_CRITICAL_SECTION * __ptr64,unsigned long)
?sm_pfnSetCriticalSectionSpinCount@CCriticalSection@@0P6AKPEAU_RTL_CRITICAL_SECTION@@K@ZEA DATA
; private: static int (__cdecl* __ptr64 CCriticalSection::sm_pfnTryEnterCriticalSection)(struct _RTL_CRITICAL_SECTION * __ptr64)
?sm_pfnTryEnterCriticalSection@CCriticalSection@@0P6AHPEAU_RTL_CRITICAL_SECTION@@@ZEA DATA
; protected: static unsigned short  CCritSec::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CCritSec@@1GA DATA
; protected: static unsigned short  CFakeLock::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CFakeLock@@1GA DATA
; protected: static unsigned short  CReaderWriterLock2::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CReaderWriterLock2@@1GA DATA
; protected: static unsigned short  CReaderWriterLock3::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CReaderWriterLock3@@1GA DATA
; protected: static unsigned short  CReaderWriterLock::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CReaderWriterLock@@1GA DATA
; protected: static unsigned short  CSmallSpinLock::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CSmallSpinLock@@1GA DATA
; protected: static unsigned short  CSpinLock::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CSpinLock@@1GA DATA
DllBidEntryPoint
DllMain
FXMemAttach
FXMemDetach
GetIUMS
IrtlTrace
IsValidAddress
IsValidString
LoadVersionedResourceEx
MPCSInitialize
MPCSUninitialize
MPDeleteCriticalSection
MPInitializeCriticalSection
MPInitializeCriticalSectionAndSpinCount
MpGetHeapHandle
MpHeapAlloc
MpHeapCreate
MpHeapDestroy
MpHeapFree
MpHeapReAlloc
MpHeapSize
MpHeapValidate
SetIUMS
SetMemHook
UMSEnterCSWraper
mpCalloc
mpFree
mpMalloc
mpRealloc
