; 
; Exports of file IisRTL.DLL
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY IisRTL.DLL
EXPORTS
; public: __thiscall CDataCache<struct DATETIME_FORMAT_ENTRY>::CDataCache<struct DATETIME_FORMAT_ENTRY>(void)
??0?$CDataCache@UDATETIME_FORMAT_ENTRY@@@@QAE@XZ
; public: __thiscall CDataCache<class CDateTime>::CDataCache<class CDateTime>(void)
??0?$CDataCache@VCDateTime@@@@QAE@XZ
; public: __thiscall ALLOC_CACHE_HANDLER::ALLOC_CACHE_HANDLER(char const *,struct _ALLOC_CACHE_CONFIGURATION const *,int)
??0ALLOC_CACHE_HANDLER@@QAE@PBDPBU_ALLOC_CACHE_CONFIGURATION@@H@Z
; public: __thiscall ASCLOG_DATETIME_CACHE::ASCLOG_DATETIME_CACHE(void)
??0ASCLOG_DATETIME_CACHE@@QAE@XZ
; public: __thiscall BUFFER::BUFFER(unsigned int)
??0BUFFER@@QAE@I@Z
; public: __thiscall BUFFER::BUFFER(unsigned char *,unsigned int)
??0BUFFER@@QAE@PAEI@Z
; public: __thiscall BUFFER_CHAIN::BUFFER_CHAIN(void)
??0BUFFER_CHAIN@@QAE@XZ
; public: __thiscall BUFFER_CHAIN_ITEM::BUFFER_CHAIN_ITEM(unsigned int)
??0BUFFER_CHAIN_ITEM@@QAE@I@Z
; public: __thiscall CACHED_DATETIME_FORMATS::CACHED_DATETIME_FORMATS(void)
??0CACHED_DATETIME_FORMATS@@QAE@XZ
; public: __thiscall CCritSec::CCritSec(void)
??0CCritSec@@QAE@XZ
; public: __thiscall CDFTCache::CDFTCache(void)
??0CDFTCache@@QAE@XZ
; public: __thiscall CDateTime::CDateTime(struct _FILETIME const &)
??0CDateTime@@QAE@ABU_FILETIME@@@Z
; public: __thiscall CDateTime::CDateTime(struct _FILETIME const &,struct _SYSTEMTIME const &)
??0CDateTime@@QAE@ABU_FILETIME@@ABU_SYSTEMTIME@@@Z
; public: __thiscall CDateTime::CDateTime(struct _SYSTEMTIME const &)
??0CDateTime@@QAE@ABU_SYSTEMTIME@@@Z
; public: __thiscall CDateTime::CDateTime(void)
??0CDateTime@@QAE@XZ
; public: __thiscall CDoubleList::CDoubleList(void)
??0CDoubleList@@QAE@XZ
; public: __thiscall CEtwTracer::CEtwTracer(void)
??0CEtwTracer@@QAE@XZ
; public: __thiscall CFakeLock::CFakeLock(void)
??0CFakeLock@@QAE@XZ
; public: __thiscall CLKRHashTable::CLKRHashTable(char const *,unsigned long const  (__stdcall*)(void const *),unsigned long (__stdcall*)(unsigned long),bool (__stdcall*)(unsigned long,unsigned long),void (__stdcall*)(void const *,int),double,unsigned long,unsigned long,bool)
??0CLKRHashTable@@QAE@PBDP6G?BKPBX@ZP6GKK@ZP6G_NKK@ZP6GX1H@ZNKK_N@Z
; public: __thiscall CLKRHashTableStats::CLKRHashTableStats(void)
??0CLKRHashTableStats@@QAE@XZ
; protected: __thiscall CLKRHashTable_Iterator::CLKRHashTable_Iterator(class CLKRHashTable *,short)
??0CLKRHashTable_Iterator@@IAE@PAVCLKRHashTable@@F@Z
; public: __thiscall CLKRHashTable_Iterator::CLKRHashTable_Iterator(class CLKRHashTable_Iterator const &)
??0CLKRHashTable_Iterator@@QAE@ABV0@@Z
; public: __thiscall CLKRHashTable_Iterator::CLKRHashTable_Iterator(void)
??0CLKRHashTable_Iterator@@QAE@XZ
; private: __thiscall CLKRLinearHashTable::CLKRLinearHashTable(char const *,unsigned long const  (__stdcall*)(void const *),unsigned long (__stdcall*)(unsigned long),bool (__stdcall*)(unsigned long,unsigned long),void (__stdcall*)(void const *,int),double,unsigned long,class CLKRHashTable *,bool)
??0CLKRLinearHashTable@@AAE@PBDP6G?BKPBX@ZP6GKK@ZP6G_NKK@ZP6GX1H@ZNKPAVCLKRHashTable@@_N@Z
; public: __thiscall CLKRLinearHashTable::CLKRLinearHashTable(char const *,unsigned long const  (__stdcall*)(void const *),unsigned long (__stdcall*)(unsigned long),bool (__stdcall*)(unsigned long,unsigned long),void (__stdcall*)(void const *,int),double,unsigned long,unsigned long,bool)
??0CLKRLinearHashTable@@QAE@PBDP6G?BKPBX@ZP6GKK@ZP6G_NKK@ZP6GX1H@ZNKK_N@Z
; protected: __thiscall CLKRLinearHashTable_Iterator::CLKRLinearHashTable_Iterator(class CLKRLinearHashTable *,class CNodeClump *,unsigned long,short)
??0CLKRLinearHashTable_Iterator@@IAE@PAVCLKRLinearHashTable@@PAVCNodeClump@@KF@Z
; public: __thiscall CLKRLinearHashTable_Iterator::CLKRLinearHashTable_Iterator(class CLKRLinearHashTable_Iterator const &)
??0CLKRLinearHashTable_Iterator@@QAE@ABV0@@Z
; public: __thiscall CLKRLinearHashTable_Iterator::CLKRLinearHashTable_Iterator(void)
??0CLKRLinearHashTable_Iterator@@QAE@XZ
; public: __thiscall CLockedDoubleList::CLockedDoubleList(void)
??0CLockedDoubleList@@QAE@XZ
; public: __thiscall CLockedSingleList::CLockedSingleList(void)
??0CLockedSingleList@@QAE@XZ
; public: __thiscall CReaderWriterLock2::CReaderWriterLock2(void)
??0CReaderWriterLock2@@QAE@XZ
; public: __thiscall CReaderWriterLock3::CReaderWriterLock3(void)
??0CReaderWriterLock3@@QAE@XZ
; public: __thiscall CReaderWriterLock::CReaderWriterLock(void)
??0CReaderWriterLock@@QAE@XZ
; public: __thiscall CRtlResource::CRtlResource(void)
??0CRtlResource@@QAE@XZ
; public: __thiscall CShareLock::CShareLock(void)
??0CShareLock@@QAE@XZ
; public: __thiscall CSharelock::CSharelock(int,int)
??0CSharelock@@QAE@HH@Z
; public: __thiscall CSingleList::CSingleList(void)
??0CSingleList@@QAE@XZ
; public: __thiscall CSmallSpinLock::CSmallSpinLock(void)
??0CSmallSpinLock@@QAE@XZ
; public: __thiscall CSpinLock::CSpinLock(void)
??0CSpinLock@@QAE@XZ
; public: __thiscall EVENT_LOG::EVENT_LOG(char const *)
??0EVENT_LOG@@QAE@PBD@Z
; public: __thiscall EXTLOG_DATETIME_CACHE::EXTLOG_DATETIME_CACHE(void)
??0EXTLOG_DATETIME_CACHE@@QAE@XZ
; public: __thiscall HASH_TABLE::HASH_TABLE(class HASH_TABLE const &)
??0HASH_TABLE@@QAE@ABV0@@Z
; public: __thiscall HASH_TABLE::HASH_TABLE(unsigned long,char const *,unsigned long)
??0HASH_TABLE@@QAE@KPBDK@Z
; public: __thiscall HASH_TABLE_BUCKET::HASH_TABLE_BUCKET(void)
??0HASH_TABLE_BUCKET@@QAE@XZ
; public: __thiscall HTB_ELEMENT::HTB_ELEMENT(void)
??0HTB_ELEMENT@@QAE@XZ
; public: __thiscall HT_ELEMENT::HT_ELEMENT(class HT_ELEMENT const &)
??0HT_ELEMENT@@QAE@ABV0@@Z
; public: __thiscall HT_ELEMENT::HT_ELEMENT(void)
??0HT_ELEMENT@@QAE@XZ
; public: __thiscall MLSZAU::MLSZAU(class MLSZAU &)
??0MLSZAU@@QAE@AAV0@@Z
; public: __thiscall MLSZAU::MLSZAU(char * const,int,unsigned long)
??0MLSZAU@@QAE@QADHK@Z
; public: __thiscall MLSZAU::MLSZAU(char * const,unsigned long)
??0MLSZAU@@QAE@QADK@Z
; public: __thiscall MLSZAU::MLSZAU(unsigned short * const,unsigned long)
??0MLSZAU@@QAE@QAGK@Z
; public: __thiscall MLSZAU::MLSZAU(void)
??0MLSZAU@@QAE@XZ
; public: __thiscall MULTISZ::MULTISZ(class MULTISZ const &)
??0MULTISZ@@QAE@ABV0@@Z
; public: __thiscall MULTISZ::MULTISZ(char *,unsigned long)
??0MULTISZ@@QAE@PADK@Z
; public: __thiscall MULTISZ::MULTISZ(char const *)
??0MULTISZ@@QAE@PBD@Z
; public: __thiscall MULTISZ::MULTISZ(void)
??0MULTISZ@@QAE@XZ
; public: __thiscall STR::STR(class STR const &)
??0STR@@QAE@ABV0@@Z
; public: __thiscall STR::STR(unsigned long)
??0STR@@QAE@K@Z
; public: __thiscall STR::STR(char *,unsigned long,int)
??0STR@@QAE@PADKH@Z
; public: __thiscall STR::STR(char const *)
??0STR@@QAE@PBD@Z
; public: __thiscall STR::STR(void)
??0STR@@QAE@XZ
; private: __thiscall STRA::STRA(class STRA const &)
??0STRA@@AAE@ABV0@@Z
; private: __thiscall STRA::STRA(char *)
??0STRA@@AAE@PAD@Z
; private: __thiscall STRA::STRA(char const *)
??0STRA@@AAE@PBD@Z
; public: __thiscall STRA::STRA(char *,unsigned long)
??0STRA@@QAE@PADK@Z
; public: __thiscall STRA::STRA(void)
??0STRA@@QAE@XZ
; public: __thiscall STRAU::STRAU(class STRAU &)
??0STRAU@@QAE@AAV0@@Z
; public: __thiscall STRAU::STRAU(char const *)
??0STRAU@@QAE@PBD@Z
; public: __thiscall STRAU::STRAU(char const *,int)
??0STRAU@@QAE@PBDH@Z
; public: __thiscall STRAU::STRAU(unsigned short const *)
??0STRAU@@QAE@PBG@Z
; public: __thiscall STRAU::STRAU(void)
??0STRAU@@QAE@XZ
; private: __thiscall STRU::STRU(class STRU const &)
??0STRU@@AAE@ABV0@@Z
; private: __thiscall STRU::STRU(unsigned short *)
??0STRU@@AAE@PAG@Z
; private: __thiscall STRU::STRU(unsigned short const *)
??0STRU@@AAE@PBG@Z
; public: __thiscall STRU::STRU(unsigned short *,unsigned long)
??0STRU@@QAE@PAGK@Z
; public: __thiscall STRU::STRU(void)
??0STRU@@QAE@XZ
; public: __thiscall TS_RESOURCE::TS_RESOURCE(void)
??0TS_RESOURCE@@QAE@XZ
; public: __thiscall W3_DATETIME_CACHE::W3_DATETIME_CACHE(void)
??0W3_DATETIME_CACHE@@QAE@XZ
; public: __thiscall ALLOC_CACHE_HANDLER::~ALLOC_CACHE_HANDLER(void)
??1ALLOC_CACHE_HANDLER@@QAE@XZ
; public: virtual __thiscall ASCLOG_DATETIME_CACHE::~ASCLOG_DATETIME_CACHE(void)
??1ASCLOG_DATETIME_CACHE@@UAE@XZ
; public: __thiscall BUFFER::~BUFFER(void)
??1BUFFER@@QAE@XZ
; public: __thiscall BUFFER_CHAIN::~BUFFER_CHAIN(void)
??1BUFFER_CHAIN@@QAE@XZ
; public: __thiscall BUFFER_CHAIN_ITEM::~BUFFER_CHAIN_ITEM(void)
??1BUFFER_CHAIN_ITEM@@QAE@XZ
; public: virtual __thiscall CACHED_DATETIME_FORMATS::~CACHED_DATETIME_FORMATS(void)
??1CACHED_DATETIME_FORMATS@@UAE@XZ
; public: __thiscall CCritSec::~CCritSec(void)
??1CCritSec@@QAE@XZ
; public: __thiscall CDoubleList::~CDoubleList(void)
??1CDoubleList@@QAE@XZ
; public: __thiscall CEtwTracer::~CEtwTracer(void)
??1CEtwTracer@@QAE@XZ
; public: __thiscall CFakeLock::~CFakeLock(void)
??1CFakeLock@@QAE@XZ
; public: __thiscall CLKRHashTable::~CLKRHashTable(void)
??1CLKRHashTable@@QAE@XZ
; public: __thiscall CLKRHashTable_Iterator::~CLKRHashTable_Iterator(void)
??1CLKRHashTable_Iterator@@QAE@XZ
; public: __thiscall CLKRLinearHashTable::~CLKRLinearHashTable(void)
??1CLKRLinearHashTable@@QAE@XZ
; public: __thiscall CLKRLinearHashTable_Iterator::~CLKRLinearHashTable_Iterator(void)
??1CLKRLinearHashTable_Iterator@@QAE@XZ
; public: __thiscall CLockedDoubleList::~CLockedDoubleList(void)
??1CLockedDoubleList@@QAE@XZ
; public: __thiscall CLockedSingleList::~CLockedSingleList(void)
??1CLockedSingleList@@QAE@XZ
; public: __thiscall CRtlResource::~CRtlResource(void)
??1CRtlResource@@QAE@XZ
; public: __thiscall CShareLock::~CShareLock(void)
??1CShareLock@@QAE@XZ
; public: __thiscall CSharelock::~CSharelock(void)
??1CSharelock@@QAE@XZ
; public: __thiscall CSingleList::~CSingleList(void)
??1CSingleList@@QAE@XZ
; public: __thiscall EVENT_LOG::~EVENT_LOG(void)
??1EVENT_LOG@@QAE@XZ
; public: virtual __thiscall EXTLOG_DATETIME_CACHE::~EXTLOG_DATETIME_CACHE(void)
??1EXTLOG_DATETIME_CACHE@@UAE@XZ
; public: virtual __thiscall HASH_TABLE::~HASH_TABLE(void)
??1HASH_TABLE@@UAE@XZ
; public: __thiscall HASH_TABLE_BUCKET::~HASH_TABLE_BUCKET(void)
??1HASH_TABLE_BUCKET@@QAE@XZ
; public: __thiscall HTB_ELEMENT::~HTB_ELEMENT(void)
??1HTB_ELEMENT@@QAE@XZ
; public: virtual __thiscall HT_ELEMENT::~HT_ELEMENT(void)
??1HT_ELEMENT@@UAE@XZ
; public: __thiscall MLSZAU::~MLSZAU(void)
??1MLSZAU@@QAE@XZ
; public: __thiscall MULTISZ::~MULTISZ(void)
??1MULTISZ@@QAE@XZ
; public: __thiscall STR::~STR(void)
??1STR@@QAE@XZ
; public: __thiscall STRA::~STRA(void)
??1STRA@@QAE@XZ
; public: __thiscall STRAU::~STRAU(void)
??1STRAU@@QAE@XZ
; public: __thiscall STRU::~STRU(void)
??1STRU@@QAE@XZ
; public: __thiscall TS_RESOURCE::~TS_RESOURCE(void)
??1TS_RESOURCE@@QAE@XZ
; public: virtual __thiscall W3_DATETIME_CACHE::~W3_DATETIME_CACHE(void)
??1W3_DATETIME_CACHE@@UAE@XZ
; public: static void * __stdcall CLKRLinearHashTable::operator new(unsigned int)
??2CLKRLinearHashTable@@SGPAXI@Z
; public: static void __stdcall CLKRLinearHashTable::operator delete(void *)
??3CLKRLinearHashTable@@SGXPAX@Z
; public: class CDataCache<struct DATETIME_FORMAT_ENTRY> & __thiscall CDataCache<struct DATETIME_FORMAT_ENTRY>::operator=(class CDataCache<struct DATETIME_FORMAT_ENTRY> const &)
??4?$CDataCache@UDATETIME_FORMAT_ENTRY@@@@QAEAAV0@ABV0@@Z
; public: class CDataCache<class CDateTime> & __thiscall CDataCache<class CDateTime>::operator=(class CDataCache<class CDateTime> const &)
??4?$CDataCache@VCDateTime@@@@QAEAAV0@ABV0@@Z
; public: class CLockBase<1,1,3,1,3,2> & __thiscall CLockBase<1,1,3,1,3,2>::operator=(class CLockBase<1,1,3,1,3,2> const &)
??4?$CLockBase@$00$00$02$00$02$01@@QAEAAV0@ABV0@@Z
; public: class CLockBase<2,1,1,1,3,2> & __thiscall CLockBase<2,1,1,1,3,2>::operator=(class CLockBase<2,1,1,1,3,2> const &)
??4?$CLockBase@$01$00$00$00$02$01@@QAEAAV0@ABV0@@Z
; public: class CLockBase<3,1,1,1,1,1> & __thiscall CLockBase<3,1,1,1,1,1>::operator=(class CLockBase<3,1,1,1,1,1> const &)
??4?$CLockBase@$02$00$00$00$00$00@@QAEAAV0@ABV0@@Z
; public: class CLockBase<4,1,1,2,3,3> & __thiscall CLockBase<4,1,1,2,3,3>::operator=(class CLockBase<4,1,1,2,3,3> const &)
??4?$CLockBase@$03$00$00$01$02$02@@QAEAAV0@ABV0@@Z
; public: class CLockBase<5,2,1,2,3,3> & __thiscall CLockBase<5,2,1,2,3,3>::operator=(class CLockBase<5,2,1,2,3,3> const &)
??4?$CLockBase@$04$01$00$01$02$02@@QAEAAV0@ABV0@@Z
; public: class CLockBase<6,2,1,2,3,3> & __thiscall CLockBase<6,2,1,2,3,3>::operator=(class CLockBase<6,2,1,2,3,3> const &)
??4?$CLockBase@$05$01$00$01$02$02@@QAEAAV0@ABV0@@Z
; public: class CLockBase<7,2,2,1,3,2> & __thiscall CLockBase<7,2,2,1,3,2>::operator=(class CLockBase<7,2,2,1,3,2> const &)
??4?$CLockBase@$06$01$01$00$02$01@@QAEAAV0@ABV0@@Z
; public: class CLockBase<8,2,2,1,3,2> & __thiscall CLockBase<8,2,2,1,3,2>::operator=(class CLockBase<8,2,2,1,3,2> const &)
??4?$CLockBase@$07$01$01$00$02$01@@QAEAAV0@ABV0@@Z
; public: class CLockBase<9,2,1,1,3,2> & __thiscall CLockBase<9,2,1,1,3,2>::operator=(class CLockBase<9,2,1,1,3,2> const &)
??4?$CLockBase@$08$01$00$00$02$01@@QAEAAV0@ABV0@@Z
; public: class ALLOC_CACHE_HANDLER & __thiscall ALLOC_CACHE_HANDLER::operator=(class ALLOC_CACHE_HANDLER const &)
??4ALLOC_CACHE_HANDLER@@QAEAAV0@ABV0@@Z
; public: class BUFFER & __thiscall BUFFER::operator=(class BUFFER const &)
??4BUFFER@@QAEAAV0@ABV0@@Z
; public: class BUFFER_CHAIN & __thiscall BUFFER_CHAIN::operator=(class BUFFER_CHAIN const &)
??4BUFFER_CHAIN@@QAEAAV0@ABV0@@Z
; public: class BUFFER_CHAIN_ITEM & __thiscall BUFFER_CHAIN_ITEM::operator=(class BUFFER_CHAIN_ITEM const &)
??4BUFFER_CHAIN_ITEM@@QAEAAV0@ABV0@@Z
; public: class CCritSec & __thiscall CCritSec::operator=(class CCritSec const &)
??4CCritSec@@QAEAAV0@ABV0@@Z
; public: class CDFTCache & __thiscall CDFTCache::operator=(class CDFTCache const &)
??4CDFTCache@@QAEAAV0@ABV0@@Z
; public: class CDateTime & __thiscall CDateTime::operator=(class CDateTime const &)
??4CDateTime@@QAEAAV0@ABV0@@Z
; public: class CDoubleList & __thiscall CDoubleList::operator=(class CDoubleList const &)
??4CDoubleList@@QAEAAV0@ABV0@@Z
; public: class CFakeLock & __thiscall CFakeLock::operator=(class CFakeLock const &)
??4CFakeLock@@QAEAAV0@ABV0@@Z
; public: class CLKRHashTableStats & __thiscall CLKRHashTableStats::operator=(class CLKRHashTableStats const &)
??4CLKRHashTableStats@@QAEAAV0@ABV0@@Z
; public: class CLKRHashTable_Iterator & __thiscall CLKRHashTable_Iterator::operator=(class CLKRHashTable_Iterator const &)
??4CLKRHashTable_Iterator@@QAEAAV0@ABV0@@Z
; public: class CLKRLinearHashTable_Iterator & __thiscall CLKRLinearHashTable_Iterator::operator=(class CLKRLinearHashTable_Iterator const &)
??4CLKRLinearHashTable_Iterator@@QAEAAV0@ABV0@@Z
; public: class CLockedDoubleList & __thiscall CLockedDoubleList::operator=(class CLockedDoubleList const &)
??4CLockedDoubleList@@QAEAAV0@ABV0@@Z
; public: class CLockedSingleList & __thiscall CLockedSingleList::operator=(class CLockedSingleList const &)
??4CLockedSingleList@@QAEAAV0@ABV0@@Z
; public: class CReaderWriterLock2 & __thiscall CReaderWriterLock2::operator=(class CReaderWriterLock2 const &)
??4CReaderWriterLock2@@QAEAAV0@ABV0@@Z
; public: class CReaderWriterLock3 & __thiscall CReaderWriterLock3::operator=(class CReaderWriterLock3 const &)
??4CReaderWriterLock3@@QAEAAV0@ABV0@@Z
; public: class CReaderWriterLock & __thiscall CReaderWriterLock::operator=(class CReaderWriterLock const &)
??4CReaderWriterLock@@QAEAAV0@ABV0@@Z
; public: class CRtlResource & __thiscall CRtlResource::operator=(class CRtlResource const &)
??4CRtlResource@@QAEAAV0@ABV0@@Z
; public: class CSingleList & __thiscall CSingleList::operator=(class CSingleList const &)
??4CSingleList@@QAEAAV0@ABV0@@Z
; public: class CSmallSpinLock & __thiscall CSmallSpinLock::operator=(class CSmallSpinLock const &)
??4CSmallSpinLock@@QAEAAV0@ABV0@@Z
; public: class CSpinLock & __thiscall CSpinLock::operator=(class CSpinLock const &)
??4CSpinLock@@QAEAAV0@ABV0@@Z
; public: struct DATETIME_FORMAT_ENTRY & __thiscall DATETIME_FORMAT_ENTRY::operator=(struct DATETIME_FORMAT_ENTRY const &)
??4DATETIME_FORMAT_ENTRY@@QAEAAU0@ABU0@@Z
; public: class EVENT_LOG & __thiscall EVENT_LOG::operator=(class EVENT_LOG const &)
??4EVENT_LOG@@QAEAAV0@ABV0@@Z
; public: class HASH_TABLE & __thiscall HASH_TABLE::operator=(class HASH_TABLE const &)
??4HASH_TABLE@@QAEAAV0@ABV0@@Z
; public: class HASH_TABLE_BUCKET & __thiscall HASH_TABLE_BUCKET::operator=(class HASH_TABLE_BUCKET const &)
??4HASH_TABLE_BUCKET@@QAEAAV0@ABV0@@Z
; public: struct HTB_ELEMENT & __thiscall HTB_ELEMENT::operator=(struct HTB_ELEMENT const &)
??4HTB_ELEMENT@@QAEAAU0@ABU0@@Z
; public: class HT_ELEMENT & __thiscall HT_ELEMENT::operator=(class HT_ELEMENT const &)
??4HT_ELEMENT@@QAEAAV0@ABV0@@Z
; public: class MLSZAU & __thiscall MLSZAU::operator=(class MLSZAU const &)
??4MLSZAU@@QAEAAV0@ABV0@@Z
; public: class MULTISZ & __thiscall MULTISZ::operator=(class MULTISZ const &)
??4MULTISZ@@QAEAAV0@ABV0@@Z
; public: class STR & __thiscall STR::operator=(class STR const &)
??4STR@@QAEAAV0@ABV0@@Z
; private: class STRA & __thiscall STRA::operator=(class STRA const &)
??4STRA@@AAEAAV0@ABV0@@Z
; public: class STRAU & __thiscall STRAU::operator=(class STRAU const &)
??4STRAU@@QAEAAV0@ABV0@@Z
; private: class STRU & __thiscall STRU::operator=(class STRU const &)
??4STRU@@AAEAAV0@ABV0@@Z
; public: class TS_RESOURCE & __thiscall TS_RESOURCE::operator=(class TS_RESOURCE const &)
??4TS_RESOURCE@@QAEAAV0@ABV0@@Z
; public: bool __thiscall CLKRHashTable_Iterator::operator==(class CLKRHashTable_Iterator const &)const 
??8CLKRHashTable_Iterator@@QBE_NABV0@@Z
; public: bool __thiscall CLKRLinearHashTable_Iterator::operator==(class CLKRLinearHashTable_Iterator const &)const 
??8CLKRLinearHashTable_Iterator@@QBE_NABV0@@Z
; public: bool __thiscall CLKRHashTable_Iterator::operator!=(class CLKRHashTable_Iterator const &)const 
??9CLKRHashTable_Iterator@@QBE_NABV0@@Z
; public: bool __thiscall CLKRLinearHashTable_Iterator::operator!=(class CLKRLinearHashTable_Iterator const &)const 
??9CLKRLinearHashTable_Iterator@@QBE_NABV0@@Z
; const  ASCLOG_DATETIME_CACHE::`vftable'
??_7ASCLOG_DATETIME_CACHE@@6B@
; const  CACHED_DATETIME_FORMATS::`vftable'
??_7CACHED_DATETIME_FORMATS@@6B@
; const  EXTLOG_DATETIME_CACHE::`vftable'
??_7EXTLOG_DATETIME_CACHE@@6B@
; const  HASH_TABLE::`vftable'
??_7HASH_TABLE@@6B@
; const  HT_ELEMENT::`vftable'
??_7HT_ELEMENT@@6B@
; const  W3_DATETIME_CACHE::`vftable'
??_7W3_DATETIME_CACHE@@6B@
; public: void __thiscall BUFFER::`default constructor closure'(void)
??_FBUFFER@@QAEXXZ
; public: void __thiscall BUFFER_CHAIN_ITEM::`default constructor closure'(void)
??_FBUFFER_CHAIN_ITEM@@QAEXXZ
; public: void __thiscall CSharelock::`default constructor closure'(void)
??_FCSharelock@@QAEXXZ
; public: int __thiscall CSharelock::ActiveUsers(void)
?ActiveUsers@CSharelock@@QAEHXZ
; public: void * __thiscall ALLOC_CACHE_HANDLER::Alloc(void)
?Alloc@ALLOC_CACHE_HANDLER@@QAEPAXXZ
; public: int __thiscall MULTISZ::Append(class STR const &)
?Append@MULTISZ@@QAEHABVSTR@@@Z
; public: int __thiscall MULTISZ::Append(char const *)
?Append@MULTISZ@@QAEHPBD@Z
; public: int __thiscall MULTISZ::Append(char const *,unsigned long)
?Append@MULTISZ@@QAEHPBDK@Z
; public: int __thiscall STR::Append(class STR const &)
?Append@STR@@QAEHABV1@@Z
; public: int __thiscall STR::Append(char const *)
?Append@STR@@QAEHPBD@Z
; public: int __thiscall STR::Append(char const *,unsigned long)
?Append@STR@@QAEHPBDK@Z
; public: void __thiscall STR::Append(char)
?Append@STR@@QAEXD@Z
; public: void __thiscall STR::Append(char,char)
?Append@STR@@QAEXDD@Z
; public: long __thiscall STRA::Append(class STRA const &)
?Append@STRA@@QAEJABV1@@Z
; public: long __thiscall STRA::Append(char const *)
?Append@STRA@@QAEJPBD@Z
; public: long __thiscall STRA::Append(char const *,unsigned long)
?Append@STRA@@QAEJPBDK@Z
; public: int __thiscall STRAU::Append(class STRAU &)
?Append@STRAU@@QAEHAAV1@@Z
; public: int __thiscall STRAU::Append(char const *)
?Append@STRAU@@QAEHPBD@Z
; public: int __thiscall STRAU::Append(char const *,unsigned long)
?Append@STRAU@@QAEHPBDK@Z
; public: int __thiscall STRAU::Append(unsigned short const *)
?Append@STRAU@@QAEHPBG@Z
; public: int __thiscall STRAU::Append(unsigned short const *,unsigned long)
?Append@STRAU@@QAEHPBGK@Z
; public: long __thiscall STRU::Append(class STRU const &)
?Append@STRU@@QAEJABV1@@Z
; public: long __thiscall STRU::Append(unsigned short const *)
?Append@STRU@@QAEJPBG@Z
; public: long __thiscall STRU::Append(unsigned short const *,unsigned long)
?Append@STRU@@QAEJPBGK@Z
; public: long __thiscall STRU::AppendA(char const *)
?AppendA@STRU@@QAEJPBD@Z
; public: int __thiscall BUFFER_CHAIN::AppendBuffer(class BUFFER_CHAIN_ITEM *)
?AppendBuffer@BUFFER_CHAIN@@QAEHPAVBUFFER_CHAIN_ITEM@@@Z
; public: void __thiscall STR::AppendCRLF(void)
?AppendCRLF@STR@@QAEXXZ
; public: long __thiscall STRA::AppendW(unsigned short const *)
?AppendW@STRA@@QAEJPBG@Z
; public: long __thiscall STRA::AppendW(unsigned short const *,unsigned long)
?AppendW@STRA@@QAEJPBGK@Z
; public: long __thiscall STRA::AppendWTruncate(unsigned short const *)
?AppendWTruncate@STRA@@QAEJPBG@Z
; public: long __thiscall STRA::AppendWTruncate(unsigned short const *,unsigned long)
?AppendWTruncate@STRA@@QAEJPBGK@Z
; public: unsigned long __thiscall CLKRHashTable::Apply(enum LK_ACTION  (__stdcall*)(void const *,void *),void *,enum LK_LOCKTYPE)
?Apply@CLKRHashTable@@QAEKP6G?AW4LK_ACTION@@PBXPAX@Z1W4LK_LOCKTYPE@@@Z
; public: unsigned long __thiscall CLKRLinearHashTable::Apply(enum LK_ACTION  (__stdcall*)(void const *,void *),void *,enum LK_LOCKTYPE)
?Apply@CLKRLinearHashTable@@QAEKP6G?AW4LK_ACTION@@PBXPAX@Z1W4LK_LOCKTYPE@@@Z
; public: unsigned long __thiscall CLKRHashTable::ApplyIf(enum LK_PREDICATE  (__stdcall*)(void const *,void *),enum LK_ACTION  (__stdcall*)(void const *,void *),void *,enum LK_LOCKTYPE)
?ApplyIf@CLKRHashTable@@QAEKP6G?AW4LK_PREDICATE@@PBXPAX@ZP6G?AW4LK_ACTION@@01@Z1W4LK_LOCKTYPE@@@Z
; public: unsigned long __thiscall CLKRLinearHashTable::ApplyIf(enum LK_PREDICATE  (__stdcall*)(void const *,void *),enum LK_ACTION  (__stdcall*)(void const *,void *),void *,enum LK_LOCKTYPE)
?ApplyIf@CLKRLinearHashTable@@QAEKP6G?AW4LK_PREDICATE@@PBXPAX@ZP6G?AW4LK_ACTION@@01@Z1W4LK_LOCKTYPE@@@Z
; private: int __thiscall MULTISZ::AuxAppend(unsigned char const *,unsigned int,int)
?AuxAppend@MULTISZ@@AAEHPBEIH@Z
; private: int __thiscall STR::AuxAppend(unsigned char const *,unsigned int,int)
?AuxAppend@STR@@AAEHPBEIH@Z
; private: long __thiscall STRA::AuxAppend(unsigned char const *,unsigned long,unsigned long,int)
?AuxAppend@STRA@@AAEJPBEKKH@Z
; private: int __thiscall STRAU::AuxAppend(char const *,unsigned int,int)
?AuxAppend@STRAU@@AAEHPBDIH@Z
; private: int __thiscall STRAU::AuxAppend(unsigned short const *,unsigned int,int)
?AuxAppend@STRAU@@AAEHPBGIH@Z
; private: long __thiscall STRU::AuxAppend(unsigned char const *,unsigned long,unsigned long,int)
?AuxAppend@STRU@@AAEJPBEKKH@Z
; private: long __thiscall STRU::AuxAppendA(unsigned char const *,unsigned long,unsigned long,int)
?AuxAppendA@STRU@@AAEJPBEKKH@Z
; private: long __thiscall STRA::AuxAppendW(unsigned short const *,unsigned long,unsigned long,int)
?AuxAppendW@STRA@@AAEJPBGKKH@Z
; private: long __thiscall STRA::AuxAppendWTruncate(unsigned short const *,unsigned long,unsigned long,int)
?AuxAppendWTruncate@STRA@@AAEJPBGKKH@Z
; private: void __thiscall MLSZAU::AuxInit(char * const,unsigned long)
?AuxInit@MLSZAU@@AAEXQADK@Z
; private: void __thiscall MLSZAU::AuxInit(unsigned short * const,unsigned long)
?AuxInit@MLSZAU@@AAEXQAGK@Z
; private: void __thiscall MULTISZ::AuxInit(unsigned char const *)
?AuxInit@MULTISZ@@AAEXPBE@Z
; private: void __thiscall STR::AuxInit(unsigned char const *)
?AuxInit@STR@@AAEXPBE@Z
; private: void __thiscall STRAU::AuxInit(char const *)
?AuxInit@STRAU@@AAEXPBD@Z
; private: void __thiscall STRAU::AuxInit(unsigned short const *)
?AuxInit@STRAU@@AAEXPBG@Z
; public: class CLKRHashTable_Iterator  __thiscall CLKRHashTable::Begin(void)
?Begin@CLKRHashTable@@QAE?AVCLKRHashTable_Iterator@@XZ
; public: class CLKRLinearHashTable_Iterator  __thiscall CLKRLinearHashTable::Begin(void)
?Begin@CLKRLinearHashTable@@QAE?AVCLKRLinearHashTable_Iterator@@XZ
; public: static long __stdcall CLKRHashTableStats::BucketIndex(long)
?BucketIndex@CLKRHashTableStats@@SGJJ@Z
; public: static long __stdcall CLKRHashTableStats::BucketSize(long)
?BucketSize@CLKRHashTableStats@@SGJJ@Z
; public: static long const * __stdcall CLKRHashTableStats::BucketSizes(void)
?BucketSizes@CLKRHashTableStats@@SGPBJXZ
; public: static unsigned long __stdcall MULTISZ::CalcLength(char const *,unsigned long *)
?CalcLength@MULTISZ@@SGKPBDPAK@Z
; public: unsigned long __thiscall BUFFER_CHAIN::CalcTotalSize(int)const 
?CalcTotalSize@BUFFER_CHAIN@@QBEKH@Z
; public: virtual unsigned long __thiscall HASH_TABLE::CalculateHash(char const *)const 
?CalculateHash@HASH_TABLE@@UBEKPBD@Z
; public: virtual unsigned long __thiscall HASH_TABLE::CalculateHash(char const *,unsigned long)const 
?CalculateHash@HASH_TABLE@@UBEKPBDK@Z
CanonURL
; public: void __thiscall CSharelock::ChangeExclusiveLockToSharedLock(void)
?ChangeExclusiveLockToSharedLock@CSharelock@@QAEXXZ
; public: unsigned char __thiscall CSharelock::ChangeSharedLockToExclusiveLock(int)
?ChangeSharedLockToExclusiveLock@CSharelock@@QAEEH@Z
; public: int __thiscall CLKRHashTable::CheckTable(void)const 
?CheckTable@CLKRHashTable@@QBEHXZ
; public: int __thiscall CLKRLinearHashTable::CheckTable(void)const 
?CheckTable@CLKRLinearHashTable@@QBEHXZ
; public: unsigned char __thiscall CSharelock::ClaimExclusiveLock(int)
?ClaimExclusiveLock@CSharelock@@QAEEH@Z
; public: unsigned char __thiscall CSharelock::ClaimShareLock(int)
?ClaimShareLock@CSharelock@@QAEEH@Z
; public: static char const * __stdcall CCritSec::ClassName(void)
?ClassName@CCritSec@@SGPBDXZ
; public: static unsigned short const * __stdcall CCritSec::ClassName(void)
?ClassName@CCritSec@@SGPBGXZ
; public: static char const * __stdcall CFakeLock::ClassName(void)
?ClassName@CFakeLock@@SGPBDXZ
; public: static unsigned short const * __stdcall CFakeLock::ClassName(void)
?ClassName@CFakeLock@@SGPBGXZ
; public: static unsigned short const * __stdcall CLKRHashTable::ClassName(void)
?ClassName@CLKRHashTable@@SGPBGXZ
; public: static unsigned short const * __stdcall CLKRLinearHashTable::ClassName(void)
?ClassName@CLKRLinearHashTable@@SGPBGXZ
; public: static char const * __stdcall CReaderWriterLock2::ClassName(void)
?ClassName@CReaderWriterLock2@@SGPBDXZ
; public: static unsigned short const * __stdcall CReaderWriterLock2::ClassName(void)
?ClassName@CReaderWriterLock2@@SGPBGXZ
; public: static char const * __stdcall CReaderWriterLock3::ClassName(void)
?ClassName@CReaderWriterLock3@@SGPBDXZ
; public: static unsigned short const * __stdcall CReaderWriterLock3::ClassName(void)
?ClassName@CReaderWriterLock3@@SGPBGXZ
; public: static char const * __stdcall CReaderWriterLock::ClassName(void)
?ClassName@CReaderWriterLock@@SGPBDXZ
; public: static unsigned short const * __stdcall CReaderWriterLock::ClassName(void)
?ClassName@CReaderWriterLock@@SGPBGXZ
; public: static char const * __stdcall CRtlResource::ClassName(void)
?ClassName@CRtlResource@@SGPBDXZ
; public: static char const * __stdcall CShareLock::ClassName(void)
?ClassName@CShareLock@@SGPBDXZ
; public: static char const * __stdcall CSmallSpinLock::ClassName(void)
?ClassName@CSmallSpinLock@@SGPBDXZ
; public: static unsigned short const * __stdcall CSmallSpinLock::ClassName(void)
?ClassName@CSmallSpinLock@@SGPBGXZ
; public: static char const * __stdcall CSpinLock::ClassName(void)
?ClassName@CSpinLock@@SGPBDXZ
; public: static unsigned short const * __stdcall CSpinLock::ClassName(void)
?ClassName@CSpinLock@@SGPBGXZ
; public: static int __stdcall ALLOC_CACHE_HANDLER::Cleanup(void)
?Cleanup@ALLOC_CACHE_HANDLER@@SGHXZ
; public: void __thiscall HASH_TABLE::Cleanup(void)
?Cleanup@HASH_TABLE@@QAEXXZ
; public: void __thiscall HTB_ELEMENT::Cleanup(void)
?Cleanup@HTB_ELEMENT@@QAEXXZ
; public: static void __stdcall ALLOC_CACHE_HANDLER::CleanupAllLookasides(void *,unsigned char)
?CleanupAllLookasides@ALLOC_CACHE_HANDLER@@SGXPAXE@Z
; public: void __thiscall ALLOC_CACHE_HANDLER::CleanupLookaside(int)
?CleanupLookaside@ALLOC_CACHE_HANDLER@@QAEXH@Z
; public: void __thiscall CLKRHashTable::Clear(void)
?Clear@CLKRHashTable@@QAEXXZ
; public: void __thiscall CLKRLinearHashTable::Clear(void)
?Clear@CLKRLinearHashTable@@QAEXXZ
; public: void __thiscall STR::Clear(void)
?Clear@STR@@QAEXXZ
; public: int __thiscall MULTISZ::Clone(class MULTISZ *)const 
?Clone@MULTISZ@@QBEHPAV1@@Z
; public: int __thiscall STR::Clone(class STR *)const 
?Clone@STR@@QBEHPAV1@@Z
; public: long __thiscall STRA::Clone(class STRA *)const 
?Clone@STRA@@QBEJPAV1@@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::CloseIterator(class CLKRHashTable::CIterator *)
?CloseIterator@CLKRHashTable@@QAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::CloseIterator(class CLKRHashTable::CConstIterator *)const 
?CloseIterator@CLKRHashTable@@QBE?AW4LK_RETCODE@@PAVCConstIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::CloseIterator(class CLKRLinearHashTable::CIterator *)
?CloseIterator@CLKRLinearHashTable@@QAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::CloseIterator(class CLKRLinearHashTable::CConstIterator *)const 
?CloseIterator@CLKRLinearHashTable@@QBE?AW4LK_RETCODE@@PAVCConstIterator@1@@Z
; public: unsigned long __thiscall HASH_TABLE::CloseIterator(struct HT_ITERATOR *)
?CloseIterator@HASH_TABLE@@QAEKPAUHT_ITERATOR@@@Z
; public: unsigned long __thiscall HASH_TABLE_BUCKET::CloseIterator(struct HT_ITERATOR *)
?CloseIterator@HASH_TABLE_BUCKET@@QAEKPAUHT_ITERATOR@@@Z
; public: void __thiscall TS_RESOURCE::Convert(enum TSRES_CONV_TYPE)
?Convert@TS_RESOURCE@@QAEXW4TSRES_CONV_TYPE@@@Z
; public: void __thiscall CCritSec::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CCritSec@@QAEXXZ
; public: void __thiscall CFakeLock::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CFakeLock@@QAEXXZ
; public: void __thiscall CLKRHashTable::ConvertExclusiveToShared(void)const 
?ConvertExclusiveToShared@CLKRHashTable@@QBEXXZ
; public: void __thiscall CLKRLinearHashTable::ConvertExclusiveToShared(void)const 
?ConvertExclusiveToShared@CLKRLinearHashTable@@QBEXXZ
; public: void __thiscall CReaderWriterLock2::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CReaderWriterLock2@@QAEXXZ
; public: void __thiscall CReaderWriterLock3::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CReaderWriterLock3@@QAEXXZ
; public: void __thiscall CReaderWriterLock::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CReaderWriterLock@@QAEXXZ
; public: void __thiscall CRtlResource::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CRtlResource@@QAEXXZ
; public: void __thiscall CShareLock::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CShareLock@@QAEXXZ
; public: void __thiscall CSmallSpinLock::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CSmallSpinLock@@QAEXXZ
; public: void __thiscall CSpinLock::ConvertExclusiveToShared(void)
?ConvertExclusiveToShared@CSpinLock@@QAEXXZ
; public: void __thiscall CCritSec::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CCritSec@@QAEXXZ
; public: void __thiscall CFakeLock::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CFakeLock@@QAEXXZ
; public: void __thiscall CLKRHashTable::ConvertSharedToExclusive(void)const 
?ConvertSharedToExclusive@CLKRHashTable@@QBEXXZ
; public: void __thiscall CLKRLinearHashTable::ConvertSharedToExclusive(void)const 
?ConvertSharedToExclusive@CLKRLinearHashTable@@QBEXXZ
; public: void __thiscall CReaderWriterLock2::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CReaderWriterLock2@@QAEXXZ
; public: void __thiscall CReaderWriterLock3::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CReaderWriterLock3@@QAEXXZ
; public: void __thiscall CReaderWriterLock::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CReaderWriterLock@@QAEXXZ
; public: void __thiscall CRtlResource::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CRtlResource@@QAEXXZ
; public: void __thiscall CShareLock::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CShareLock@@QAEXXZ
; public: void __thiscall CSmallSpinLock::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CSmallSpinLock@@QAEXXZ
; public: void __thiscall CSpinLock::ConvertSharedToExclusive(void)
?ConvertSharedToExclusive@CSpinLock@@QAEXXZ
; public: int __thiscall MULTISZ::Copy(class MULTISZ const &)
?Copy@MULTISZ@@QAEHABV1@@Z
; public: int __thiscall MULTISZ::Copy(char const *,unsigned long)
?Copy@MULTISZ@@QAEHPBDK@Z
; public: int __thiscall STR::Copy(class STR const &)
?Copy@STR@@QAEHABV1@@Z
; public: int __thiscall STR::Copy(char const *)
?Copy@STR@@QAEHPBD@Z
; public: int __thiscall STR::Copy(char const *,unsigned long)
?Copy@STR@@QAEHPBDK@Z
; public: long __thiscall STRA::Copy(class STRA const &)
?Copy@STRA@@QAEJABV1@@Z
; public: long __thiscall STRA::Copy(char const *)
?Copy@STRA@@QAEJPBD@Z
; public: long __thiscall STRA::Copy(char const *,unsigned long)
?Copy@STRA@@QAEJPBDK@Z
; public: int __thiscall STRAU::Copy(class STRAU &)
?Copy@STRAU@@QAEHAAV1@@Z
; public: int __thiscall STRAU::Copy(char const *)
?Copy@STRAU@@QAEHPBD@Z
; public: int __thiscall STRAU::Copy(char const *,unsigned long)
?Copy@STRAU@@QAEHPBDK@Z
; public: int __thiscall STRAU::Copy(unsigned short const *)
?Copy@STRAU@@QAEHPBG@Z
; public: int __thiscall STRAU::Copy(unsigned short const *,unsigned long)
?Copy@STRAU@@QAEHPBGK@Z
; public: long __thiscall STRU::Copy(class STRU const &)
?Copy@STRU@@QAEJABV1@@Z
; public: long __thiscall STRU::Copy(unsigned short const *)
?Copy@STRU@@QAEJPBG@Z
; public: long __thiscall STRU::Copy(unsigned short const *,unsigned long)
?Copy@STRU@@QAEJPBGK@Z
; public: long __thiscall STRU::CopyA(char const *)
?CopyA@STRU@@QAEJPBD@Z
; public: long __thiscall STRU::CopyA(char const *,unsigned long)
?CopyA@STRU@@QAEJPBDK@Z
; public: long __thiscall STRA::CopyBinary(void *,unsigned long)
?CopyBinary@STRA@@QAEJPAXK@Z
; public: int __thiscall CDFTCache::CopyFormattedData(struct _SYSTEMTIME const *,char *)const 
?CopyFormattedData@CDFTCache@@QBEHPBU_SYSTEMTIME@@PAD@Z
; public: void __thiscall DATETIME_FORMAT_ENTRY::CopyFormattedData(struct _SYSTEMTIME const *,char *)const 
?CopyFormattedData@DATETIME_FORMAT_ENTRY@@QBEXPBU_SYSTEMTIME@@PAD@Z
; public: int __thiscall MULTISZ::CopyToBuffer(char *,unsigned long *)const 
?CopyToBuffer@MULTISZ@@QBEHPADPAK@Z
; public: int __thiscall STR::CopyToBuffer(char *,unsigned long *)const 
?CopyToBuffer@STR@@QBEHPADPAK@Z
; public: int __thiscall STR::CopyToBuffer(unsigned short *,unsigned long *)const 
?CopyToBuffer@STR@@QBEHPAGPAK@Z
; public: long __thiscall STRA::CopyToBuffer(char *,unsigned long *)const 
?CopyToBuffer@STRA@@QBEJPADPAK@Z
; public: long __thiscall STRU::CopyToBuffer(unsigned short *,unsigned long *)const 
?CopyToBuffer@STRU@@QBEJPAGPAK@Z
; public: long __thiscall STRA::CopyW(unsigned short const *)
?CopyW@STRA@@QAEJPBG@Z
; public: long __thiscall STRA::CopyW(unsigned short const *,unsigned long)
?CopyW@STRA@@QAEJPBGK@Z
; public: long __thiscall STRA::CopyWToUTF8(class STRU const &)
?CopyWToUTF8@STRA@@QAEJABVSTRU@@@Z
; public: long __thiscall STRA::CopyWToUTF8(unsigned short const *)
?CopyWToUTF8@STRA@@QAEJPBG@Z
; public: long __thiscall STRA::CopyWToUTF8(unsigned short const *,unsigned long)
?CopyWToUTF8@STRA@@QAEJPBGK@Z
; public: long __thiscall STRA::CopyWToUTF8Unescaped(class STRU const &)
?CopyWToUTF8Unescaped@STRA@@QAEJABVSTRU@@@Z
; public: long __thiscall STRA::CopyWToUTF8Unescaped(unsigned short const *)
?CopyWToUTF8Unescaped@STRA@@QAEJPBG@Z
; public: long __thiscall STRA::CopyWToUTF8Unescaped(unsigned short const *,unsigned long)
?CopyWToUTF8Unescaped@STRA@@QAEJPBGK@Z
; public: long __thiscall STRA::CopyWTruncate(unsigned short const *)
?CopyWTruncate@STRA@@QAEJPBG@Z
; public: long __thiscall STRA::CopyWTruncate(unsigned short const *,unsigned long)
?CopyWTruncate@STRA@@QAEJPBGK@Z
CreateKey
; public: unsigned long __thiscall CDFTCache::DateTimeChars(void)const 
?DateTimeChars@CDFTCache@@QBEKXZ
; char const * __stdcall DayOfWeek3CharNames(unsigned long)
?DayOfWeek3CharNames@@YGPBDK@Z
; public: void __thiscall HTB_ELEMENT::DecrementElements(void)
?DecrementElements@HTB_ELEMENT@@QAEXXZ
; public: int __thiscall HASH_TABLE::Delete(class HT_ELEMENT *)
?Delete@HASH_TABLE@@QAEHPAVHT_ELEMENT@@@Z
; public: int __thiscall HASH_TABLE_BUCKET::Delete(class HT_ELEMENT *)
?Delete@HASH_TABLE_BUCKET@@QAEHPAVHT_ELEMENT@@@Z
; public: int __thiscall HTB_ELEMENT::Delete(class HT_ELEMENT *)
?Delete@HTB_ELEMENT@@QAEHPAVHT_ELEMENT@@@Z
; public: unsigned long __thiscall BUFFER_CHAIN::DeleteChain(void)
?DeleteChain@BUFFER_CHAIN@@QAEKXZ
; public: unsigned long __thiscall CLKRHashTable::DeleteIf(enum LK_PREDICATE  (__stdcall*)(void const *,void *),void *)
?DeleteIf@CLKRHashTable@@QAEKP6G?AW4LK_PREDICATE@@PBXPAX@Z1@Z
; public: unsigned long __thiscall CLKRLinearHashTable::DeleteIf(enum LK_PREDICATE  (__stdcall*)(void const *,void *),void *)
?DeleteIf@CLKRLinearHashTable@@QAEKP6G?AW4LK_PREDICATE@@PBXPAX@Z1@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::DeleteKey(unsigned long)
?DeleteKey@CLKRHashTable@@QAE?AW4LK_RETCODE@@K@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::DeleteKey(unsigned long)
?DeleteKey@CLKRLinearHashTable@@QAE?AW4LK_RETCODE@@K@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::DeleteRecord(void const *)
?DeleteRecord@CLKRHashTable@@QAE?AW4LK_RETCODE@@PBX@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::DeleteRecord(void const *)
?DeleteRecord@CLKRLinearHashTable@@QAE?AW4LK_RETCODE@@PBX@Z
; public: virtual unsigned long __thiscall CEtwTracer::DisableEventsCallbackCustomHandler(void)
?DisableEventsCallbackCustomHandler@CEtwTracer@@UAEKXZ
; public: static int __stdcall ALLOC_CACHE_HANDLER::DumpStatsToHtml(char *,unsigned long *)
?DumpStatsToHtml@ALLOC_CACHE_HANDLER@@SGHPADPAK@Z
; public: virtual unsigned long __thiscall CEtwTracer::EnableEventsCallbackCustomHandler(void)
?EnableEventsCallbackCustomHandler@CEtwTracer@@UAEKXZ
; public: class CLKRHashTable_Iterator  __thiscall CLKRHashTable::End(void)
?End@CLKRHashTable@@QAE?AVCLKRHashTable_Iterator@@XZ
; public: class CLKRLinearHashTable_Iterator  __thiscall CLKRLinearHashTable::End(void)
?End@CLKRLinearHashTable@@QAE?AVCLKRLinearHashTable_Iterator@@XZ
; public: int __thiscall STR::Equ(class STR const &)const 
?Equ@STR@@QBEHABV1@@Z
; public: int __thiscall STR::Equ(char *)const 
?Equ@STR@@QBEHPAD@Z
; public: bool __thiscall CLKRHashTable::EqualRange(unsigned long,class CLKRHashTable_Iterator &,class CLKRHashTable_Iterator &)
?EqualRange@CLKRHashTable@@QAE_NKAAVCLKRHashTable_Iterator@@0@Z
; public: bool __thiscall CLKRLinearHashTable::EqualRange(unsigned long,class CLKRLinearHashTable_Iterator &,class CLKRLinearHashTable_Iterator &)
?EqualRange@CLKRLinearHashTable@@QAE_NKAAVCLKRLinearHashTable_Iterator@@0@Z
; public: int __thiscall STRA::Equals(class STRA const &)const 
?Equals@STRA@@QBEHABV1@@Z
; public: int __thiscall STRA::Equals(char * const)const 
?Equals@STRA@@QBEHQAD@Z
; public: int __thiscall STRU::Equals(class STRU const &)const 
?Equals@STRU@@QBEHABV1@@Z
; public: int __thiscall STRU::Equals(unsigned short const *)const 
?Equals@STRU@@QBEHPBG@Z
; public: int __thiscall STRA::EqualsNoCase(class STRA const &)const 
?EqualsNoCase@STRA@@QBEHABV1@@Z
; public: int __thiscall STRA::EqualsNoCase(char * const)const 
?EqualsNoCase@STRA@@QBEHQAD@Z
; public: int __thiscall STRU::EqualsNoCase(class STRU const &)const 
?EqualsNoCase@STRU@@QBEHABV1@@Z
; public: int __thiscall STRU::EqualsNoCase(unsigned short const *)const 
?EqualsNoCase@STRU@@QBEHPBG@Z
; public: bool __thiscall CLKRHashTable::Erase(class CLKRHashTable_Iterator &,class CLKRHashTable_Iterator &)
?Erase@CLKRHashTable@@QAE_NAAVCLKRHashTable_Iterator@@0@Z
; public: bool __thiscall CLKRHashTable::Erase(class CLKRHashTable_Iterator &)
?Erase@CLKRHashTable@@QAE_NAAVCLKRHashTable_Iterator@@@Z
; public: bool __thiscall CLKRLinearHashTable::Erase(class CLKRLinearHashTable_Iterator &,class CLKRLinearHashTable_Iterator &)
?Erase@CLKRLinearHashTable@@QAE_NAAVCLKRLinearHashTable_Iterator@@0@Z
; public: bool __thiscall CLKRLinearHashTable::Erase(class CLKRLinearHashTable_Iterator &)
?Erase@CLKRLinearHashTable@@QAE_NAAVCLKRLinearHashTable_Iterator@@@Z
; public: int __thiscall STR::Escape(void)
?Escape@STR@@QAEHXZ
; public: long __thiscall STRA::Escape(int,int)
?Escape@STRA@@QAEJHH@Z
; public: long __thiscall STRU::Escape(void)
?Escape@STRU@@QAEJXZ
; public: int __thiscall STR::EscapeSpaces(void)
?EscapeSpaces@STR@@QAEHXZ
; public: unsigned long __cdecl CEtwTracer::EtwTraceEvent(struct _GUID const *,unsigned long,...)
?EtwTraceEvent@CEtwTracer@@QAAKPBU_GUID@@KZZ
; int __stdcall FileTimeToGMT(struct _FILETIME const &,char *,unsigned long)
?FileTimeToGMT@@YGHABU_FILETIME@@PADK@Z
; int __stdcall FileTimeToGMTEx(struct _FILETIME const &,char *,unsigned long,unsigned long)
?FileTimeToGMTEx@@YGHABU_FILETIME@@PADKK@Z
; public: bool __thiscall CLKRHashTable::Find(unsigned long,class CLKRHashTable_Iterator &)
?Find@CLKRHashTable@@QAE_NKAAVCLKRHashTable_Iterator@@@Z
; public: bool __thiscall CLKRLinearHashTable::Find(unsigned long,class CLKRLinearHashTable_Iterator &)
?Find@CLKRLinearHashTable@@QAE_NKAAVCLKRLinearHashTable_Iterator@@@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::FindKey(unsigned long,void const * *)const 
?FindKey@CLKRHashTable@@QBE?AW4LK_RETCODE@@KPAPBX@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::FindKey(unsigned long,void const * *)const 
?FindKey@CLKRLinearHashTable@@QBE?AW4LK_RETCODE@@KPAPBX@Z
; public: unsigned long __thiscall HASH_TABLE::FindNextElement(struct HT_ITERATOR *,class HT_ELEMENT * *)
?FindNextElement@HASH_TABLE@@QAEKPAUHT_ITERATOR@@PAPAVHT_ELEMENT@@@Z
; public: unsigned long __thiscall HASH_TABLE_BUCKET::FindNextElement(struct HT_ITERATOR *,class HT_ELEMENT * *)
?FindNextElement@HASH_TABLE_BUCKET@@QAEKPAUHT_ITERATOR@@PAPAVHT_ELEMENT@@@Z
; public: unsigned long __thiscall HTB_ELEMENT::FindNextElement(unsigned long *,class HT_ELEMENT * *)
?FindNextElement@HTB_ELEMENT@@QAEKPAKPAPAVHT_ELEMENT@@@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::FindRecord(void const *)const 
?FindRecord@CLKRHashTable@@QBE?AW4LK_RETCODE@@PBX@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::FindRecord(void const *)const 
?FindRecord@CLKRLinearHashTable@@QBE?AW4LK_RETCODE@@PBX@Z
; public: int __thiscall MULTISZ::FindString(class STR const &)
?FindString@MULTISZ@@QAEHABVSTR@@@Z
; public: int __thiscall MULTISZ::FindString(char const *)
?FindString@MULTISZ@@QAEHPBD@Z
; public: class CListEntry * __thiscall CDoubleList::First(void)const 
?First@CDoubleList@@QBEQAVCListEntry@@XZ
; public: class CListEntry * __thiscall CLockedDoubleList::First(void)
?First@CLockedDoubleList@@QAEQAVCListEntry@@XZ
; public: char const * __thiscall MULTISZ::First(void)const 
?First@MULTISZ@@QBEPBDXZ
; public: struct HTBE_ENTRY * __thiscall HTB_ELEMENT::FirstElement(void)
?FirstElement@HTB_ELEMENT@@QAEPAUHTBE_ENTRY@@XZ
; public: unsigned long __thiscall HASH_TABLE::FlushElements(void)
?FlushElements@HASH_TABLE@@QAEKXZ
; public: int __thiscall STR::FormatString(unsigned long,char const * * const,char const *,unsigned long)
?FormatString@STR@@QAEHKQAPBDPBDK@Z
; public: long __thiscall STRA::FormatString(unsigned long,char const * * const,char const *,unsigned long)
?FormatString@STRA@@QAEJKQAPBDPBDK@Z
; public: char const * __thiscall CDFTCache::FormattedBuffer(void)const 
?FormattedBuffer@CDFTCache@@QBEPBDXZ
; public: int __thiscall ALLOC_CACHE_HANDLER::Free(void *)
?Free@ALLOC_CACHE_HANDLER@@QAEHPAX@Z
; public: void __thiscall BUFFER::FreeMemory(void)
?FreeMemory@BUFFER@@QAEXXZ
; public: virtual void __thiscall ASCLOG_DATETIME_CACHE::GenerateDateTimeString(struct DATETIME_FORMAT_ENTRY *,struct _SYSTEMTIME const *)
?GenerateDateTimeString@ASCLOG_DATETIME_CACHE@@UAEXPAUDATETIME_FORMAT_ENTRY@@PBU_SYSTEMTIME@@@Z
; public: virtual void __thiscall EXTLOG_DATETIME_CACHE::GenerateDateTimeString(struct DATETIME_FORMAT_ENTRY *,struct _SYSTEMTIME const *)
?GenerateDateTimeString@EXTLOG_DATETIME_CACHE@@UAEXPAUDATETIME_FORMAT_ENTRY@@PBU_SYSTEMTIME@@@Z
; public: virtual void __thiscall W3_DATETIME_CACHE::GenerateDateTimeString(struct DATETIME_FORMAT_ENTRY *,struct _SYSTEMTIME const *)
?GenerateDateTimeString@W3_DATETIME_CACHE@@UAEXPAUDATETIME_FORMAT_ENTRY@@PBU_SYSTEMTIME@@@Z
; public: unsigned short __thiscall CLKRHashTable::GetBucketLockSpinCount(void)const 
?GetBucketLockSpinCount@CLKRHashTable@@QBEGXZ
; public: unsigned short __thiscall CLKRLinearHashTable::GetBucketLockSpinCount(void)const 
?GetBucketLockSpinCount@CLKRLinearHashTable@@QBEGXZ
; public: static double __stdcall CCritSec::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CCritSec@@SGNXZ
; public: static double __stdcall CFakeLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CFakeLock@@SGNXZ
; public: static double __stdcall CReaderWriterLock2::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CReaderWriterLock2@@SGNXZ
; public: static double __stdcall CReaderWriterLock3::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CReaderWriterLock3@@SGNXZ
; public: static double __stdcall CReaderWriterLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CReaderWriterLock@@SGNXZ
; public: static double __stdcall CRtlResource::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CRtlResource@@SGNXZ
; public: static double __stdcall CShareLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CShareLock@@SGNXZ
; public: static double __stdcall CSmallSpinLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CSmallSpinLock@@SGNXZ
; public: static double __stdcall CSpinLock::GetDefaultSpinAdjustmentFactor(void)
?GetDefaultSpinAdjustmentFactor@CSpinLock@@SGNXZ
; public: static unsigned short __stdcall CCritSec::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CCritSec@@SGGXZ
; public: static unsigned short __stdcall CFakeLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CFakeLock@@SGGXZ
; public: static unsigned short __stdcall CReaderWriterLock2::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CReaderWriterLock2@@SGGXZ
; public: static unsigned short __stdcall CReaderWriterLock3::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CReaderWriterLock3@@SGGXZ
; public: static unsigned short __stdcall CReaderWriterLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CReaderWriterLock@@SGGXZ
; public: static unsigned short __stdcall CRtlResource::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CRtlResource@@SGGXZ
; public: static unsigned short __stdcall CShareLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CShareLock@@SGGXZ
; public: static unsigned short __stdcall CSmallSpinLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CSmallSpinLock@@SGGXZ
; public: static unsigned short __stdcall CSpinLock::GetDefaultSpinCount(void)
?GetDefaultSpinCount@CSpinLock@@SGGXZ
; public: unsigned long __thiscall EVENT_LOG::GetErrorCode(void)const 
?GetErrorCode@EVENT_LOG@@QBEKXZ
; public: unsigned long __thiscall CACHED_DATETIME_FORMATS::GetFormattedCurrentDateTime(char *)
?GetFormattedCurrentDateTime@CACHED_DATETIME_FORMATS@@QAEKPAD@Z
; public: unsigned long __thiscall CACHED_DATETIME_FORMATS::GetFormattedDateTime(struct _SYSTEMTIME const *,char *)
?GetFormattedDateTime@CACHED_DATETIME_FORMATS@@QAEKPBU_SYSTEMTIME@@PAD@Z
; private: int __thiscall BUFFER::GetNewStorage(unsigned int)
?GetNewStorage@BUFFER@@AAEHI@Z
; public: unsigned short __thiscall CCritSec::GetSpinCount(void)const 
?GetSpinCount@CCritSec@@QBEGXZ
; public: unsigned short __thiscall CFakeLock::GetSpinCount(void)const 
?GetSpinCount@CFakeLock@@QBEGXZ
; public: unsigned short __thiscall CReaderWriterLock2::GetSpinCount(void)const 
?GetSpinCount@CReaderWriterLock2@@QBEGXZ
; public: unsigned short __thiscall CReaderWriterLock3::GetSpinCount(void)const 
?GetSpinCount@CReaderWriterLock3@@QBEGXZ
; public: unsigned short __thiscall CReaderWriterLock::GetSpinCount(void)const 
?GetSpinCount@CReaderWriterLock@@QBEGXZ
; public: unsigned short __thiscall CRtlResource::GetSpinCount(void)const 
?GetSpinCount@CRtlResource@@QBEGXZ
; public: unsigned short __thiscall CShareLock::GetSpinCount(void)const 
?GetSpinCount@CShareLock@@QBEGXZ
; public: unsigned short __thiscall CSmallSpinLock::GetSpinCount(void)const 
?GetSpinCount@CSmallSpinLock@@QBEGXZ
; public: unsigned short __thiscall CSpinLock::GetSpinCount(void)const 
?GetSpinCount@CSpinLock@@QBEGXZ
; public: class CLKRHashTableStats  __thiscall CLKRHashTable::GetStatistics(void)const 
?GetStatistics@CLKRHashTable@@QBE?AVCLKRHashTableStats@@XZ
; public: class CLKRHashTableStats  __thiscall CLKRLinearHashTable::GetStatistics(void)const 
?GetStatistics@CLKRLinearHashTable@@QBE?AVCLKRHashTableStats@@XZ
; public: unsigned short __thiscall CLKRHashTable::GetTableLockSpinCount(void)const 
?GetTableLockSpinCount@CLKRHashTable@@QBEGXZ
; public: unsigned short __thiscall CLKRLinearHashTable::GetTableLockSpinCount(void)const 
?GetTableLockSpinCount@CLKRLinearHashTable@@QBEGXZ
; public: int __thiscall CDateTime::GetTickCount(void)
?GetTickCount@CDateTime@@QAEHXZ
; public: long __thiscall STRA::HTMLEncode(void)
?HTMLEncode@STRA@@QAEJXZ
; public: void __thiscall STR::Hash(void)
?Hash@STR@@QAEXXZ
; public: class CListEntry const * __thiscall CDoubleList::HeadNode(void)const 
?HeadNode@CDoubleList@@QBEQBVCListEntry@@XZ
; public: class CListEntry const * __thiscall CLockedDoubleList::HeadNode(void)const 
?HeadNode@CLockedDoubleList@@QBEQBVCListEntry@@XZ
IISCreateDirectory
IISstricmp
IISstrlen
IISstrlwr
IISstrncpy
IISstrnicmp
IISstrrchr
IISstrupr
; public: bool __thiscall CLKRHashTable_Iterator::Increment(void)
?Increment@CLKRHashTable_Iterator@@QAE_NXZ
; public: bool __thiscall CLKRLinearHashTable_Iterator::Increment(void)
?Increment@CLKRLinearHashTable_Iterator@@QAE_NXZ
; public: void __thiscall HTB_ELEMENT::IncrementElements(void)
?IncrementElements@HTB_ELEMENT@@QAEXXZ
; public: enum LK_RETCODE  __thiscall CLKRHashTable::IncrementIterator(class CLKRHashTable::CIterator *)
?IncrementIterator@CLKRHashTable@@QAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::IncrementIterator(class CLKRHashTable::CConstIterator *)const 
?IncrementIterator@CLKRHashTable@@QBE?AW4LK_RETCODE@@PAVCConstIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::IncrementIterator(class CLKRLinearHashTable::CIterator *)
?IncrementIterator@CLKRLinearHashTable@@QAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::IncrementIterator(class CLKRLinearHashTable::CConstIterator *)const 
?IncrementIterator@CLKRLinearHashTable@@QBE?AW4LK_RETCODE@@PAVCConstIterator@1@@Z
; public: static int __stdcall ALLOC_CACHE_HANDLER::Initialize(void)
?Initialize@ALLOC_CACHE_HANDLER@@SGHXZ
; public: enum LK_RETCODE  __thiscall CLKRHashTable::InitializeIterator(class CLKRHashTable::CIterator *)
?InitializeIterator@CLKRHashTable@@QAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::InitializeIterator(class CLKRHashTable::CConstIterator *)const 
?InitializeIterator@CLKRHashTable@@QBE?AW4LK_RETCODE@@PAVCConstIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::InitializeIterator(class CLKRLinearHashTable::CIterator *)
?InitializeIterator@CLKRLinearHashTable@@QAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::InitializeIterator(class CLKRLinearHashTable::CConstIterator *)const 
?InitializeIterator@CLKRLinearHashTable@@QBE?AW4LK_RETCODE@@PAVCConstIterator@1@@Z
; public: unsigned long __thiscall HASH_TABLE::InitializeIterator(struct HT_ITERATOR *)
?InitializeIterator@HASH_TABLE@@QAEKPAUHT_ITERATOR@@@Z
; public: unsigned long __thiscall HASH_TABLE_BUCKET::InitializeIterator(struct HT_ITERATOR *)
?InitializeIterator@HASH_TABLE_BUCKET@@QAEKPAUHT_ITERATOR@@@Z
; public: bool __thiscall CLKRHashTable::Insert(void const *,class CLKRHashTable_Iterator &,bool)
?Insert@CLKRHashTable@@QAE_NPBXAAVCLKRHashTable_Iterator@@_N@Z
; public: bool __thiscall CLKRLinearHashTable::Insert(void const *,class CLKRLinearHashTable_Iterator &,bool)
?Insert@CLKRLinearHashTable@@QAE_NPBXAAVCLKRLinearHashTable_Iterator@@_N@Z
; public: int __thiscall HASH_TABLE::Insert(class HT_ELEMENT *,int)
?Insert@HASH_TABLE@@QAEHPAVHT_ELEMENT@@H@Z
; public: int __thiscall HASH_TABLE_BUCKET::Insert(unsigned long,class HT_ELEMENT *,int)
?Insert@HASH_TABLE_BUCKET@@QAEHKPAVHT_ELEMENT@@H@Z
; public: int __thiscall HTB_ELEMENT::Insert(unsigned long,class HT_ELEMENT *)
?Insert@HTB_ELEMENT@@QAEHKPAVHT_ELEMENT@@@Z
; public: void __thiscall CDoubleList::InsertHead(class CListEntry * const)
?InsertHead@CDoubleList@@QAEXQAVCListEntry@@@Z
; public: void __thiscall CLockedDoubleList::InsertHead(class CListEntry * const)
?InsertHead@CLockedDoubleList@@QAEXQAVCListEntry@@@Z
; public: static void __stdcall ALLOC_CACHE_HANDLER::InsertNewItem(class ALLOC_CACHE_HANDLER *)
?InsertNewItem@ALLOC_CACHE_HANDLER@@SGXPAV1@@Z
; public: enum LK_RETCODE  __thiscall CLKRHashTable::InsertRecord(void const *,bool)
?InsertRecord@CLKRHashTable@@QAE?AW4LK_RETCODE@@PBX_N@Z
; public: enum LK_RETCODE  __thiscall CLKRLinearHashTable::InsertRecord(void const *,bool)
?InsertRecord@CLKRLinearHashTable@@QAE?AW4LK_RETCODE@@PBX_N@Z
; public: void __thiscall CDoubleList::InsertTail(class CListEntry * const)
?InsertTail@CDoubleList@@QAEXQAVCListEntry@@@Z
; public: void __thiscall CLockedDoubleList::InsertTail(class CListEntry * const)
?InsertTail@CLockedDoubleList@@QAEXQAVCListEntry@@@Z
; public: int __thiscall ALLOC_CACHE_HANDLER::IpPrint(char *,unsigned long *)
?IpPrint@ALLOC_CACHE_HANDLER@@QAEHPADPAK@Z
; public: int __thiscall MLSZAU::IsCurrentUnicode(void)
?IsCurrentUnicode@MLSZAU@@QAEHXZ
; public: int __thiscall STRAU::IsCurrentUnicode(void)
?IsCurrentUnicode@STRAU@@QAEHXZ
; private: int __thiscall BUFFER::IsDynAlloced(void)const 
?IsDynAlloced@BUFFER@@ABEHXZ
; public: bool __thiscall CDoubleList::IsEmpty(void)const 
?IsEmpty@CDoubleList@@QBE_NXZ
; public: bool __thiscall CLockedDoubleList::IsEmpty(void)const 
?IsEmpty@CLockedDoubleList@@QBE_NXZ
; public: bool __thiscall CLockedSingleList::IsEmpty(void)const 
?IsEmpty@CLockedSingleList@@QBE_NXZ
; public: bool __thiscall CSingleList::IsEmpty(void)const 
?IsEmpty@CSingleList@@QBE_NXZ
; public: int __thiscall MULTISZ::IsEmpty(void)const 
?IsEmpty@MULTISZ@@QBEHXZ
; public: int __thiscall STR::IsEmpty(void)const 
?IsEmpty@STR@@QBEHXZ
; public: int __thiscall STRA::IsEmpty(void)const 
?IsEmpty@STRA@@QBEHXZ
; public: int __thiscall STRAU::IsEmpty(void)
?IsEmpty@STRAU@@QAEHXZ
; public: int __thiscall STRU::IsEmpty(void)const 
?IsEmpty@STRU@@QBEHXZ
; public: int __thiscall CDFTCache::IsHit(struct _SYSTEMTIME const *)const 
?IsHit@CDFTCache@@QBEHPBU_SYSTEMTIME@@@Z
; public: int __thiscall DATETIME_FORMAT_ENTRY::IsHit(struct _SYSTEMTIME const *)const 
?IsHit@DATETIME_FORMAT_ENTRY@@QBEHPBU_SYSTEMTIME@@@Z
IsIPAddressLocal
IsLargeIntegerToDecimalChar
; public: bool __thiscall CLockedDoubleList::IsLocked(void)const 
?IsLocked@CLockedDoubleList@@QBE_NXZ
; public: bool __thiscall CLockedSingleList::IsLocked(void)const 
?IsLocked@CLockedSingleList@@QBE_NXZ
; public: bool __thiscall CCritSec::IsReadLocked(void)const 
?IsReadLocked@CCritSec@@QBE_NXZ
; public: bool __thiscall CFakeLock::IsReadLocked(void)const 
?IsReadLocked@CFakeLock@@QBE_NXZ
; public: bool __thiscall CLKRHashTable::IsReadLocked(void)const 
?IsReadLocked@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::IsReadLocked(void)const 
?IsReadLocked@CLKRLinearHashTable@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock2::IsReadLocked(void)const 
?IsReadLocked@CReaderWriterLock2@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock3::IsReadLocked(void)const 
?IsReadLocked@CReaderWriterLock3@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock::IsReadLocked(void)const 
?IsReadLocked@CReaderWriterLock@@QBE_NXZ
; public: bool __thiscall CRtlResource::IsReadLocked(void)const 
?IsReadLocked@CRtlResource@@QBE_NXZ
; public: bool __thiscall CShareLock::IsReadLocked(void)const 
?IsReadLocked@CShareLock@@QBE_NXZ
; public: bool __thiscall CSmallSpinLock::IsReadLocked(void)const 
?IsReadLocked@CSmallSpinLock@@QBE_NXZ
; public: bool __thiscall CSpinLock::IsReadLocked(void)const 
?IsReadLocked@CSpinLock@@QBE_NXZ
; public: bool __thiscall CCritSec::IsReadUnlocked(void)const 
?IsReadUnlocked@CCritSec@@QBE_NXZ
; public: bool __thiscall CFakeLock::IsReadUnlocked(void)const 
?IsReadUnlocked@CFakeLock@@QBE_NXZ
; public: bool __thiscall CLKRHashTable::IsReadUnlocked(void)const 
?IsReadUnlocked@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::IsReadUnlocked(void)const 
?IsReadUnlocked@CLKRLinearHashTable@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock2::IsReadUnlocked(void)const 
?IsReadUnlocked@CReaderWriterLock2@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock3::IsReadUnlocked(void)const 
?IsReadUnlocked@CReaderWriterLock3@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock::IsReadUnlocked(void)const 
?IsReadUnlocked@CReaderWriterLock@@QBE_NXZ
; public: bool __thiscall CRtlResource::IsReadUnlocked(void)const 
?IsReadUnlocked@CRtlResource@@QBE_NXZ
; public: bool __thiscall CShareLock::IsReadUnlocked(void)const 
?IsReadUnlocked@CShareLock@@QBE_NXZ
; public: bool __thiscall CSmallSpinLock::IsReadUnlocked(void)const 
?IsReadUnlocked@CSmallSpinLock@@QBE_NXZ
; public: bool __thiscall CSpinLock::IsReadUnlocked(void)const 
?IsReadUnlocked@CSpinLock@@QBE_NXZ
; public: int __thiscall HTB_ELEMENT::IsSpaceAvailable(void)const 
?IsSpaceAvailable@HTB_ELEMENT@@QBEHXZ
; public: bool __thiscall CLockedDoubleList::IsUnlocked(void)const 
?IsUnlocked@CLockedDoubleList@@QBE_NXZ
; public: bool __thiscall CLockedSingleList::IsUnlocked(void)const 
?IsUnlocked@CLockedSingleList@@QBE_NXZ
; public: bool __thiscall CLKRHashTable::IsUsable(void)const 
?IsUsable@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::IsUsable(void)const 
?IsUsable@CLKRLinearHashTable@@QBE_NXZ
; public: int __thiscall ALLOC_CACHE_HANDLER::IsValid(void)const 
?IsValid@ALLOC_CACHE_HANDLER@@QBEHXZ
; public: int __thiscall BUFFER::IsValid(void)const 
?IsValid@BUFFER@@QBEHXZ
; public: bool __thiscall CLKRHashTable::IsValid(void)const 
?IsValid@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRHashTable_Iterator::IsValid(void)const 
?IsValid@CLKRHashTable_Iterator@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::IsValid(void)const 
?IsValid@CLKRLinearHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable_Iterator::IsValid(void)const 
?IsValid@CLKRLinearHashTable_Iterator@@QBE_NXZ
; public: int __thiscall HASH_TABLE::IsValid(void)const 
?IsValid@HASH_TABLE@@QBEHXZ
; public: int __thiscall MLSZAU::IsValid(void)
?IsValid@MLSZAU@@QAEHXZ
; public: int __thiscall MULTISZ::IsValid(void)const 
?IsValid@MULTISZ@@QBEHXZ
; public: int __thiscall STR::IsValid(void)const 
?IsValid@STR@@QBEHXZ
; public: int __thiscall STRA::IsValid(void)const 
?IsValid@STRA@@QBEHXZ
; public: int __thiscall STRAU::IsValid(void)
?IsValid@STRAU@@QAEHXZ
; public: bool __thiscall CCritSec::IsWriteLocked(void)const 
?IsWriteLocked@CCritSec@@QBE_NXZ
; public: bool __thiscall CFakeLock::IsWriteLocked(void)const 
?IsWriteLocked@CFakeLock@@QBE_NXZ
; public: bool __thiscall CLKRHashTable::IsWriteLocked(void)const 
?IsWriteLocked@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::IsWriteLocked(void)const 
?IsWriteLocked@CLKRLinearHashTable@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock2::IsWriteLocked(void)const 
?IsWriteLocked@CReaderWriterLock2@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock3::IsWriteLocked(void)const 
?IsWriteLocked@CReaderWriterLock3@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock::IsWriteLocked(void)const 
?IsWriteLocked@CReaderWriterLock@@QBE_NXZ
; public: bool __thiscall CRtlResource::IsWriteLocked(void)const 
?IsWriteLocked@CRtlResource@@QBE_NXZ
; public: bool __thiscall CShareLock::IsWriteLocked(void)const 
?IsWriteLocked@CShareLock@@QBE_NXZ
; public: bool __thiscall CSmallSpinLock::IsWriteLocked(void)const 
?IsWriteLocked@CSmallSpinLock@@QBE_NXZ
; public: bool __thiscall CSpinLock::IsWriteLocked(void)const 
?IsWriteLocked@CSpinLock@@QBE_NXZ
; public: bool __thiscall CCritSec::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CCritSec@@QBE_NXZ
; public: bool __thiscall CFakeLock::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CFakeLock@@QBE_NXZ
; public: bool __thiscall CLKRHashTable::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CLKRLinearHashTable@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock2::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CReaderWriterLock2@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock3::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CReaderWriterLock3@@QBE_NXZ
; public: bool __thiscall CReaderWriterLock::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CReaderWriterLock@@QBE_NXZ
; public: bool __thiscall CRtlResource::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CRtlResource@@QBE_NXZ
; public: bool __thiscall CShareLock::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CShareLock@@QBE_NXZ
; public: bool __thiscall CSmallSpinLock::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CSmallSpinLock@@QBE_NXZ
; public: bool __thiscall CSpinLock::IsWriteUnlocked(void)const 
?IsWriteUnlocked@CSpinLock@@QBE_NXZ
; public: unsigned long const  __thiscall CLKRHashTable_Iterator::Key(void)const 
?Key@CLKRHashTable_Iterator@@QBE?BKXZ
; public: unsigned long const  __thiscall CLKRLinearHashTable_Iterator::Key(void)const 
?Key@CLKRLinearHashTable_Iterator@@QBE?BKXZ
; public: class CListEntry * __thiscall CDoubleList::Last(void)const 
?Last@CDoubleList@@QBEQAVCListEntry@@XZ
; public: class CListEntry * __thiscall CLockedDoubleList::Last(void)
?Last@CLockedDoubleList@@QAEQAVCListEntry@@XZ
; public: struct HTBE_ENTRY * __thiscall HTB_ELEMENT::LastElement(void)
?LastElement@HTB_ELEMENT@@QAEPAUHTBE_ENTRY@@XZ
; public: int __thiscall STR::LoadStringA(unsigned long,struct HINSTANCE__ *)
?LoadStringA@STR@@QAEHKPAUHINSTANCE__@@@Z
; public: int __thiscall STR::LoadStringA(unsigned long,char const *,unsigned long)
?LoadStringA@STR@@QAEHKPBDK@Z
; public: long __thiscall STRA::LoadStringW(unsigned long,struct HINSTANCE__ *)
?LoadStringW@STRA@@QAEJKPAUHINSTANCE__@@@Z
; public: long __thiscall STRA::LoadStringW(unsigned long,char const *,unsigned long)
?LoadStringW@STRA@@QAEJKPBDK@Z
; private: void __thiscall ALLOC_CACHE_HANDLER::Lock(void)
?Lock@ALLOC_CACHE_HANDLER@@AAEXXZ
; public: void __thiscall CLockedDoubleList::Lock(void)
?Lock@CLockedDoubleList@@QAEXXZ
; public: void __thiscall CLockedSingleList::Lock(void)
?Lock@CLockedSingleList@@QAEXXZ
; private: void __thiscall HASH_TABLE_BUCKET::Lock(void)
?Lock@HASH_TABLE_BUCKET@@AAEXXZ
; public: void __thiscall TS_RESOURCE::Lock(enum TSRES_LOCK_TYPE)
?Lock@TS_RESOURCE@@QAEXW4TSRES_LOCK_TYPE@@@Z
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<1,1,3,1,3,2>::LockType(void)
?LockType@?$CLockBase@$00$00$02$00$02$01@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<2,1,1,1,3,2>::LockType(void)
?LockType@?$CLockBase@$01$00$00$00$02$01@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<3,1,1,1,1,1>::LockType(void)
?LockType@?$CLockBase@$02$00$00$00$00$00@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<4,1,1,2,3,3>::LockType(void)
?LockType@?$CLockBase@$03$00$00$01$02$02@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<5,2,1,2,3,3>::LockType(void)
?LockType@?$CLockBase@$04$01$00$01$02$02@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<6,2,1,2,3,3>::LockType(void)
?LockType@?$CLockBase@$05$01$00$01$02$02@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<7,2,2,1,3,2>::LockType(void)
?LockType@?$CLockBase@$06$01$01$00$02$01@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<8,2,2,1,3,2>::LockType(void)
?LockType@?$CLockBase@$07$01$01$00$02$01@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: static enum LOCK_LOCKTYPE  __stdcall CLockBase<9,2,1,1,3,2>::LockType(void)
?LockType@?$CLockBase@$08$01$00$00$02$01@@SG?AW4LOCK_LOCKTYPE@@XZ
; public: void __thiscall EVENT_LOG::LogEvent(unsigned long,unsigned short,char const * * const,unsigned long)
?LogEvent@EVENT_LOG@@QAEXKGQAPBDK@Z
; private: void __thiscall EVENT_LOG::LogEventPrivate(unsigned long,unsigned short,unsigned short,char const * * const,unsigned long)
?LogEventPrivate@EVENT_LOG@@AAEXKGGQAPBDK@Z
; public: class HT_ELEMENT * __thiscall HASH_TABLE::Lookup(char const *)
?Lookup@HASH_TABLE@@QAEPAVHT_ELEMENT@@PBD@Z
; public: class HT_ELEMENT * __thiscall HASH_TABLE::Lookup(char const *,unsigned long)
?Lookup@HASH_TABLE@@QAEPAVHT_ELEMENT@@PBDK@Z
; public: class HT_ELEMENT * __thiscall HASH_TABLE_BUCKET::Lookup(unsigned long,char const *,unsigned long)
?Lookup@HASH_TABLE_BUCKET@@QAEPAVHT_ELEMENT@@KPBDK@Z
; public: class HT_ELEMENT * __thiscall HTB_ELEMENT::Lookup(unsigned long,char const *,unsigned long)
?Lookup@HTB_ELEMENT@@QAEPAVHT_ELEMENT@@KPBDK@Z
; public: unsigned long __thiscall CLKRHashTable::MaxSize(void)const 
?MaxSize@CLKRHashTable@@QBEKXZ
; public: unsigned long __thiscall CLKRLinearHashTable::MaxSize(void)const 
?MaxSize@CLKRLinearHashTable@@QBEKXZ
; char const * __stdcall Month3CharNames(unsigned long)
?Month3CharNames@@YGPBDK@Z
; public: bool __thiscall CLKRHashTable::MultiKeys(void)const 
?MultiKeys@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::MultiKeys(void)const 
?MultiKeys@CLKRLinearHashTable@@QBE_NXZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<1,1,3,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$00$00$02$00$02$01@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<2,1,1,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$01$00$00$00$02$01@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<3,1,1,1,1,1>::MutexType(void)
?MutexType@?$CLockBase@$02$00$00$00$00$00@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<4,1,1,2,3,3>::MutexType(void)
?MutexType@?$CLockBase@$03$00$00$01$02$02@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<5,2,1,2,3,3>::MutexType(void)
?MutexType@?$CLockBase@$04$01$00$01$02$02@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<6,2,1,2,3,3>::MutexType(void)
?MutexType@?$CLockBase@$05$01$00$01$02$02@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<7,2,2,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$06$01$01$00$02$01@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<8,2,2,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$07$01$01$00$02$01@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: static enum LOCK_RW_MUTEX  __stdcall CLockBase<9,2,1,1,3,2>::MutexType(void)
?MutexType@?$CLockBase@$08$01$00$00$02$01@@SG?AW4LOCK_RW_MUTEX@@XZ
; public: char const * __thiscall MULTISZ::Next(char const *)const 
?Next@MULTISZ@@QBEPBDPBD@Z
; public: class BUFFER_CHAIN_ITEM * __thiscall BUFFER_CHAIN::NextBuffer(class BUFFER_CHAIN_ITEM *)
?NextBuffer@BUFFER_CHAIN@@QAEPAVBUFFER_CHAIN_ITEM@@PAV2@@Z
; public: void __thiscall HTB_ELEMENT::NextElement(struct HTBE_ENTRY * &)
?NextElement@HTB_ELEMENT@@QAEXAAPAUHTBE_ENTRY@@@Z
; long __stdcall NormalizeUrl(char *)
?NormalizeUrl@@YGJPAD@Z
; long __stdcall NormalizeUrlW(unsigned short *)
?NormalizeUrlW@@YGJPAG@Z
NtLargeIntegerTimeToLocalSystemTime
NtLargeIntegerTimeToSystemTime
NtSystemTimeToLargeInteger
; public: unsigned long __thiscall HTB_ELEMENT::NumElements(void)const 
?NumElements@HTB_ELEMENT@@QBEKXZ
; public: unsigned long __thiscall HASH_TABLE_BUCKET::NumEntries(void)
?NumEntries@HASH_TABLE_BUCKET@@QAEKXZ
; public: int __thiscall CLKRHashTable::NumSubTables(void)const 
?NumSubTables@CLKRHashTable@@QBEHXZ
; public: static enum LK_TABLESIZE  __stdcall CLKRHashTable::NumSubTables(unsigned long &,unsigned long &)
?NumSubTables@CLKRHashTable@@SG?AW4LK_TABLESIZE@@AAK0@Z
; public: int __thiscall CLKRLinearHashTable::NumSubTables(void)const 
?NumSubTables@CLKRLinearHashTable@@QBEHXZ
; public: static enum LK_TABLESIZE  __stdcall CLKRLinearHashTable::NumSubTables(unsigned long &,unsigned long &)
?NumSubTables@CLKRLinearHashTable@@SG?AW4LK_TABLESIZE@@AAK0@Z
; public: int __thiscall CDFTCache::OffsetSeconds(void)const 
?OffsetSeconds@CDFTCache@@QBEHXZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<1,1,3,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$00$00$02$00$02$01@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<2,1,1,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$01$00$00$00$02$01@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<3,1,1,1,1,1>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$02$00$00$00$00$00@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<4,1,1,2,3,3>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$03$00$00$01$02$02@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<5,2,1,2,3,3>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$04$01$00$01$02$02@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<6,2,1,2,3,3>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$05$01$00$01$02$02@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<7,2,2,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$06$01$01$00$02$01@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<8,2,2,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$07$01$01$00$02$01@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: static enum LOCK_PERLOCK_SPIN  __stdcall CLockBase<9,2,1,1,3,2>::PerLockSpin(void)
?PerLockSpin@?$CLockBase@$08$01$00$00$02$01@@SG?AW4LOCK_PERLOCK_SPIN@@XZ
; public: class CSingleListEntry * __thiscall CLockedSingleList::Pop(void)
?Pop@CLockedSingleList@@QAEQAVCSingleListEntry@@XZ
; public: class CSingleListEntry * __thiscall CSingleList::Pop(void)
?Pop@CSingleList@@QAEQAVCSingleListEntry@@XZ
; public: void __thiscall ALLOC_CACHE_HANDLER::Print(void)
?Print@ALLOC_CACHE_HANDLER@@QAEXXZ
; public: void __thiscall HASH_TABLE::Print(unsigned long)
?Print@HASH_TABLE@@QAEXK@Z
; public: void __thiscall HASH_TABLE_BUCKET::Print(unsigned long)
?Print@HASH_TABLE_BUCKET@@QAEXK@Z
; public: void __thiscall HTB_ELEMENT::Print(unsigned long)const 
?Print@HTB_ELEMENT@@QBEXK@Z
; private: unsigned short * __thiscall STRAU::PrivateQueryStr(int)
?PrivateQueryStr@STRAU@@AAEPAGH@Z
; public: void __thiscall CLockedSingleList::Push(class CSingleListEntry * const)
?Push@CLockedSingleList@@QAEXQAVCSingleListEntry@@@Z
; public: void __thiscall CSingleList::Push(class CSingleListEntry * const)
?Push@CSingleList@@QAEXQAVCSingleListEntry@@@Z
; public: class BUFFER * __thiscall STRU::QueryBuffer(void)
?QueryBuffer@STRU@@QAEPAVBUFFER@@XZ
; public: unsigned int __thiscall MLSZAU::QueryCB(int)
?QueryCB@MLSZAU@@QAEIH@Z
; public: unsigned int __thiscall MULTISZ::QueryCB(void)const 
?QueryCB@MULTISZ@@QBEIXZ
; public: unsigned int __thiscall STR::QueryCB(void)const 
?QueryCB@STR@@QBEIXZ
; public: unsigned int __thiscall STRA::QueryCB(void)const 
?QueryCB@STRA@@QBEIXZ
; public: unsigned int __thiscall STRAU::QueryCB(int)
?QueryCB@STRAU@@QAEIH@Z
; public: unsigned int __thiscall STRU::QueryCB(void)const 
?QueryCB@STRU@@QBEIXZ
; public: unsigned int __thiscall MLSZAU::QueryCBA(void)
?QueryCBA@MLSZAU@@QAEIXZ
; public: unsigned int __thiscall STRAU::QueryCBA(void)
?QueryCBA@STRAU@@QAEIXZ
; public: unsigned int __thiscall MLSZAU::QueryCBW(void)
?QueryCBW@MLSZAU@@QAEIXZ
; public: unsigned int __thiscall STRAU::QueryCBW(void)
?QueryCBW@STRAU@@QAEIXZ
; public: unsigned int __thiscall MLSZAU::QueryCCH(void)
?QueryCCH@MLSZAU@@QAEIXZ
; public: unsigned int __thiscall MULTISZ::QueryCCH(void)const 
?QueryCCH@MULTISZ@@QBEIXZ
; public: unsigned int __thiscall STR::QueryCCH(void)const 
?QueryCCH@STR@@QBEIXZ
; public: unsigned int __thiscall STRA::QueryCCH(void)const 
?QueryCCH@STRA@@QBEIXZ
; public: unsigned int __thiscall STRAU::QueryCCH(void)
?QueryCCH@STRAU@@QAEIXZ
; public: unsigned int __thiscall STRU::QueryCCH(void)const 
?QueryCCH@STRU@@QBEIXZ
; public: unsigned long __thiscall CEtwTracer::QueryEnableLevel(void)
?QueryEnableLevel@CEtwTracer@@QAEKXZ
; public: char __thiscall STR::QueryFirstChar(void)const 
?QueryFirstChar@STR@@QBEDXZ
; public: char __thiscall STR::QueryLastChar(void)const 
?QueryLastChar@STR@@QBEDXZ
; public: void * __thiscall BUFFER::QueryPtr(void)const 
?QueryPtr@BUFFER@@QBEPAXXZ
; public: unsigned int __thiscall BUFFER::QuerySize(void)const 
?QuerySize@BUFFER@@QBEIXZ
; public: unsigned int __thiscall STRA::QuerySize(void)const 
?QuerySize@STRA@@QBEIXZ
; public: void __thiscall ALLOC_CACHE_HANDLER::QueryStats(struct _ALLOC_CACHE_STATISTICS *)
?QueryStats@ALLOC_CACHE_HANDLER@@QAEXPAU_ALLOC_CACHE_STATISTICS@@@Z
; public: char * __thiscall MLSZAU::QueryStr(int)
?QueryStr@MLSZAU@@QAEPADH@Z
; public: char * __thiscall MULTISZ::QueryStr(void)const 
?QueryStr@MULTISZ@@QBEPADXZ
; public: char * __thiscall STR::QueryStr(void)const 
?QueryStr@STR@@QBEPADXZ
; public: char * __thiscall STRA::QueryStr(void)
?QueryStr@STRA@@QAEPADXZ
; public: char const * __thiscall STRA::QueryStr(void)const 
?QueryStr@STRA@@QBEPBDXZ
; public: char * __thiscall STRAU::QueryStr(int)
?QueryStr@STRAU@@QAEPADH@Z
; public: unsigned short * __thiscall STRAU::QueryStr(int)
?QueryStr@STRAU@@QAEPAGH@Z
; public: unsigned short * __thiscall STRU::QueryStr(void)
?QueryStr@STRU@@QAEPAGXZ
; public: unsigned short const * __thiscall STRU::QueryStr(void)const 
?QueryStr@STRU@@QBEPBGXZ
; public: char * __thiscall MLSZAU::QueryStrA(void)
?QueryStrA@MLSZAU@@QAEPADXZ
; public: char * __thiscall MULTISZ::QueryStrA(void)const 
?QueryStrA@MULTISZ@@QBEPADXZ
; public: char * __thiscall STR::QueryStrA(void)const 
?QueryStrA@STR@@QBEPADXZ
; public: char * __thiscall STRAU::QueryStrA(void)
?QueryStrA@STRAU@@QAEPADXZ
; public: unsigned short * __thiscall MLSZAU::QueryStrW(void)
?QueryStrW@MLSZAU@@QAEPAGXZ
; public: unsigned short * __thiscall STRAU::QueryStrW(void)
?QueryStrW@STRAU@@QAEPAGXZ
; public: unsigned long __thiscall MULTISZ::QueryStringCount(void)const 
?QueryStringCount@MULTISZ@@QBEKXZ
; public: unsigned __int64 __thiscall CEtwTracer::QueryTraceHandle(void)
?QueryTraceHandle@CEtwTracer@@QAE_KXZ
; public: unsigned long __thiscall BUFFER_CHAIN_ITEM::QueryUsed(void)const 
?QueryUsed@BUFFER_CHAIN_ITEM@@QBEKXZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<1,1,3,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$00$00$02$00$02$01@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<2,1,1,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$01$00$00$00$02$01@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<3,1,1,1,1,1>::QueueType(void)
?QueueType@?$CLockBase@$02$00$00$00$00$00@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<4,1,1,2,3,3>::QueueType(void)
?QueueType@?$CLockBase@$03$00$00$01$02$02@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<5,2,1,2,3,3>::QueueType(void)
?QueueType@?$CLockBase@$04$01$00$01$02$02@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<6,2,1,2,3,3>::QueueType(void)
?QueueType@?$CLockBase@$05$01$00$01$02$02@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<7,2,2,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$06$01$01$00$02$01@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<8,2,2,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$07$01$01$00$02$01@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: static enum LOCK_QUEUE_TYPE  __stdcall CLockBase<9,2,1,1,3,2>::QueueType(void)
?QueueType@?$CLockBase@$08$01$00$00$02$01@@SG?AW4LOCK_QUEUE_TYPE@@XZ
; public: bool __thiscall CDataCache<class CDateTime>::Read(class CDateTime &)const 
?Read@?$CDataCache@VCDateTime@@@@QBE_NAAVCDateTime@@@Z
; public: void __thiscall CCritSec::ReadLock(void)
?ReadLock@CCritSec@@QAEXXZ
; public: void __thiscall CFakeLock::ReadLock(void)
?ReadLock@CFakeLock@@QAEXXZ
; public: void __thiscall CLKRHashTable::ReadLock(void)const 
?ReadLock@CLKRHashTable@@QBEXXZ
; public: void __thiscall CLKRLinearHashTable::ReadLock(void)const 
?ReadLock@CLKRLinearHashTable@@QBEXXZ
; public: void __thiscall CReaderWriterLock2::ReadLock(void)
?ReadLock@CReaderWriterLock2@@QAEXXZ
; public: void __thiscall CReaderWriterLock3::ReadLock(void)
?ReadLock@CReaderWriterLock3@@QAEXXZ
; public: void __thiscall CReaderWriterLock::ReadLock(void)
?ReadLock@CReaderWriterLock@@QAEXXZ
; public: void __thiscall CRtlResource::ReadLock(void)
?ReadLock@CRtlResource@@QAEXXZ
; public: void __thiscall CShareLock::ReadLock(void)
?ReadLock@CShareLock@@QAEXXZ
; public: void __thiscall CSmallSpinLock::ReadLock(void)
?ReadLock@CSmallSpinLock@@QAEXXZ
; public: void __thiscall CSpinLock::ReadLock(void)
?ReadLock@CSpinLock@@QAEXXZ
; public: bool __thiscall CCritSec::ReadOrWriteLock(void)
?ReadOrWriteLock@CCritSec@@QAE_NXZ
; public: bool __thiscall CFakeLock::ReadOrWriteLock(void)
?ReadOrWriteLock@CFakeLock@@QAE_NXZ
; public: bool __thiscall CReaderWriterLock3::ReadOrWriteLock(void)
?ReadOrWriteLock@CReaderWriterLock3@@QAE_NXZ
; public: bool __thiscall CSpinLock::ReadOrWriteLock(void)
?ReadOrWriteLock@CSpinLock@@QAE_NXZ
; public: void __thiscall CCritSec::ReadOrWriteUnlock(bool)
?ReadOrWriteUnlock@CCritSec@@QAEX_N@Z
; public: void __thiscall CFakeLock::ReadOrWriteUnlock(bool)
?ReadOrWriteUnlock@CFakeLock@@QAEX_N@Z
; public: void __thiscall CReaderWriterLock3::ReadOrWriteUnlock(bool)
?ReadOrWriteUnlock@CReaderWriterLock3@@QAEX_N@Z
; public: void __thiscall CSpinLock::ReadOrWriteUnlock(bool)
?ReadOrWriteUnlock@CSpinLock@@QAEX_N@Z
; public: void __thiscall CCritSec::ReadUnlock(void)
?ReadUnlock@CCritSec@@QAEXXZ
; public: void __thiscall CFakeLock::ReadUnlock(void)
?ReadUnlock@CFakeLock@@QAEXXZ
; public: void __thiscall CLKRHashTable::ReadUnlock(void)const 
?ReadUnlock@CLKRHashTable@@QBEXXZ
; public: void __thiscall CLKRLinearHashTable::ReadUnlock(void)const 
?ReadUnlock@CLKRLinearHashTable@@QBEXXZ
; public: void __thiscall CReaderWriterLock2::ReadUnlock(void)
?ReadUnlock@CReaderWriterLock2@@QAEXXZ
; public: void __thiscall CReaderWriterLock3::ReadUnlock(void)
?ReadUnlock@CReaderWriterLock3@@QAEXXZ
; public: void __thiscall CReaderWriterLock::ReadUnlock(void)
?ReadUnlock@CReaderWriterLock@@QAEXXZ
; public: void __thiscall CRtlResource::ReadUnlock(void)
?ReadUnlock@CRtlResource@@QAEXXZ
; public: void __thiscall CShareLock::ReadUnlock(void)
?ReadUnlock@CShareLock@@QAEXXZ
; public: void __thiscall CSmallSpinLock::ReadUnlock(void)
?ReadUnlock@CSmallSpinLock@@QAEXXZ
; public: void __thiscall CSpinLock::ReadUnlock(void)
?ReadUnlock@CSpinLock@@QAEXXZ
; private: int __thiscall BUFFER::ReallocStorage(unsigned int)
?ReallocStorage@BUFFER@@AAEHI@Z
; public: void __thiscall MULTISZ::RecalcLen(void)
?RecalcLen@MULTISZ@@QAEXXZ
; public: void const * __thiscall CLKRHashTable_Iterator::Record(void)const 
?Record@CLKRHashTable_Iterator@@QBEPBXXZ
; public: void const * __thiscall CLKRLinearHashTable_Iterator::Record(void)const 
?Record@CLKRLinearHashTable_Iterator@@QBEPBXXZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<1,1,3,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$00$00$02$00$02$01@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<2,1,1,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$01$00$00$00$02$01@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<3,1,1,1,1,1>::Recursion(void)
?Recursion@?$CLockBase@$02$00$00$00$00$00@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<4,1,1,2,3,3>::Recursion(void)
?Recursion@?$CLockBase@$03$00$00$01$02$02@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<5,2,1,2,3,3>::Recursion(void)
?Recursion@?$CLockBase@$04$01$00$01$02$02@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<6,2,1,2,3,3>::Recursion(void)
?Recursion@?$CLockBase@$05$01$00$01$02$02@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<7,2,2,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$06$01$01$00$02$01@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<8,2,2,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$07$01$01$00$02$01@@SG?AW4LOCK_RECURSION@@XZ
; public: static enum LOCK_RECURSION  __stdcall CLockBase<9,2,1,1,3,2>::Recursion(void)
?Recursion@?$CLockBase@$08$01$00$00$02$01@@SG?AW4LOCK_RECURSION@@XZ
; public: unsigned long __thiscall CEtwTracer::Register(struct _GUID const *,unsigned short *,unsigned short *)
?Register@CEtwTracer@@QAEKPBU_GUID@@PAG1@Z
; public: void __thiscall CSharelock::ReleaseExclusiveLock(void)
?ReleaseExclusiveLock@CSharelock@@QAEXXZ
; public: void __thiscall CSharelock::ReleaseShareLock(void)
?ReleaseShareLock@CSharelock@@QAEXXZ
; public: static void __stdcall CDoubleList::RemoveEntry(class CListEntry * const)
?RemoveEntry@CDoubleList@@SGXQAVCListEntry@@@Z
; public: void __thiscall CLockedDoubleList::RemoveEntry(class CListEntry * const)
?RemoveEntry@CLockedDoubleList@@QAEXQAVCListEntry@@@Z
; public: class CListEntry * __thiscall CDoubleList::RemoveHead(void)
?RemoveHead@CDoubleList@@QAEQAVCListEntry@@XZ
; public: class CListEntry * __thiscall CLockedDoubleList::RemoveHead(void)
?RemoveHead@CLockedDoubleList@@QAEQAVCListEntry@@XZ
; public: static void __stdcall ALLOC_CACHE_HANDLER::RemoveItem(class ALLOC_CACHE_HANDLER *)
?RemoveItem@ALLOC_CACHE_HANDLER@@SGXPAV1@@Z
; public: class CListEntry * __thiscall CDoubleList::RemoveTail(void)
?RemoveTail@CDoubleList@@QAEQAVCListEntry@@XZ
; public: class CListEntry * __thiscall CLockedDoubleList::RemoveTail(void)
?RemoveTail@CLockedDoubleList@@QAEQAVCListEntry@@XZ
RemoveWorkItem
; public: void __thiscall MLSZAU::Reset(void)
?Reset@MLSZAU@@QAEXXZ
; public: void __thiscall MULTISZ::Reset(void)
?Reset@MULTISZ@@QAEXXZ
; public: void __thiscall STR::Reset(void)
?Reset@STR@@QAEXXZ
; public: void __thiscall STRA::Reset(void)
?Reset@STRA@@QAEXXZ
; public: void __thiscall STRAU::Reset(void)
?Reset@STRAU@@QAEXXZ
; public: void __thiscall STRU::Reset(void)
?Reset@STRU@@QAEXXZ
; public: static int __stdcall ALLOC_CACHE_HANDLER::ResetLookasideCleanupInterval(void)
?ResetLookasideCleanupInterval@ALLOC_CACHE_HANDLER@@SGHXZ
; public: int __thiscall BUFFER::Resize(unsigned int)
?Resize@BUFFER@@QAEHI@Z
; public: int __thiscall BUFFER::Resize(unsigned int,unsigned int)
?Resize@BUFFER@@QAEHII@Z
; public: long __thiscall STRA::Resize(unsigned long)
?Resize@STRA@@QAEJK@Z
; public: long __thiscall STRU::Resize(unsigned long)
?Resize@STRU@@QAEJK@Z
; public: int __thiscall STRAU::ResizeW(unsigned long)
?ResizeW@STRAU@@QAEHK@Z
; public: int __thiscall STR::SafeCopy(char const *)
?SafeCopy@STR@@QAEHPBD@Z
; public: int __thiscall STRAU::SafeCopy(char const *)
?SafeCopy@STRAU@@QAEHPBD@Z
; public: int __thiscall STRAU::SafeCopy(unsigned short const *)
?SafeCopy@STRAU@@QAEHPBG@Z
ScheduleAdjustTime
ScheduleWorkItem
SchedulerInitialize
SchedulerTerminate
; public: unsigned short __thiscall CDFTCache::Seconds(void)const 
?Seconds@CDFTCache@@QBEGXZ
; public: void __thiscall CLKRHashTable::SetBucketLockSpinCount(unsigned short)
?SetBucketLockSpinCount@CLKRHashTable@@QAEXG@Z
; public: void __thiscall CLKRLinearHashTable::SetBucketLockSpinCount(unsigned short)
?SetBucketLockSpinCount@CLKRLinearHashTable@@QAEXG@Z
; public: static void __stdcall CCritSec::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CCritSec@@SGXN@Z
; public: static void __stdcall CFakeLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CFakeLock@@SGXN@Z
; public: static void __stdcall CReaderWriterLock2::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CReaderWriterLock2@@SGXN@Z
; public: static void __stdcall CReaderWriterLock3::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CReaderWriterLock3@@SGXN@Z
; public: static void __stdcall CReaderWriterLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CReaderWriterLock@@SGXN@Z
; public: static void __stdcall CRtlResource::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CRtlResource@@SGXN@Z
; public: static void __stdcall CShareLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CShareLock@@SGXN@Z
; public: static void __stdcall CSmallSpinLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CSmallSpinLock@@SGXN@Z
; public: static void __stdcall CSpinLock::SetDefaultSpinAdjustmentFactor(double)
?SetDefaultSpinAdjustmentFactor@CSpinLock@@SGXN@Z
; public: static void __stdcall CCritSec::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CCritSec@@SGXG@Z
; public: static void __stdcall CFakeLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CFakeLock@@SGXG@Z
; public: static void __stdcall CReaderWriterLock2::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CReaderWriterLock2@@SGXG@Z
; public: static void __stdcall CReaderWriterLock3::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CReaderWriterLock3@@SGXG@Z
; public: static void __stdcall CReaderWriterLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CReaderWriterLock@@SGXG@Z
; public: static void __stdcall CRtlResource::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CRtlResource@@SGXG@Z
; public: static void __stdcall CShareLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CShareLock@@SGXG@Z
; public: static void __stdcall CSmallSpinLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CSmallSpinLock@@SGXG@Z
; public: static void __stdcall CSpinLock::SetDefaultSpinCount(unsigned short)
?SetDefaultSpinCount@CSpinLock@@SGXG@Z
; public: int __thiscall STR::SetLen(unsigned long)
?SetLen@STR@@QAEHK@Z
; public: int __thiscall STRA::SetLen(unsigned long)
?SetLen@STRA@@QAEHK@Z
; public: int __thiscall STRAU::SetLen(unsigned long)
?SetLen@STRAU@@QAEHK@Z
; public: int __thiscall STRU::SetLen(unsigned long)
?SetLen@STRU@@QAEHK@Z
; public: void __thiscall ASCLOG_DATETIME_CACHE::SetLocalTime(struct _SYSTEMTIME *)
?SetLocalTime@ASCLOG_DATETIME_CACHE@@QAEXPAU_SYSTEMTIME@@@Z
; public: static int __stdcall ALLOC_CACHE_HANDLER::SetLookasideCleanupInterval(void)
?SetLookasideCleanupInterval@ALLOC_CACHE_HANDLER@@SGHXZ
; public: bool __thiscall CCritSec::SetSpinCount(unsigned short)
?SetSpinCount@CCritSec@@QAE_NG@Z
; public: static unsigned long __stdcall CCritSec::SetSpinCount(struct _RTL_CRITICAL_SECTION *,unsigned long)
?SetSpinCount@CCritSec@@SGKPAU_RTL_CRITICAL_SECTION@@K@Z
; public: bool __thiscall CFakeLock::SetSpinCount(unsigned short)
?SetSpinCount@CFakeLock@@QAE_NG@Z
; public: bool __thiscall CReaderWriterLock2::SetSpinCount(unsigned short)
?SetSpinCount@CReaderWriterLock2@@QAE_NG@Z
; public: bool __thiscall CReaderWriterLock3::SetSpinCount(unsigned short)
?SetSpinCount@CReaderWriterLock3@@QAE_NG@Z
; public: bool __thiscall CReaderWriterLock::SetSpinCount(unsigned short)
?SetSpinCount@CReaderWriterLock@@QAE_NG@Z
; public: bool __thiscall CRtlResource::SetSpinCount(unsigned short)
?SetSpinCount@CRtlResource@@QAE_NG@Z
; public: bool __thiscall CShareLock::SetSpinCount(unsigned short)
?SetSpinCount@CShareLock@@QAE_NG@Z
; public: bool __thiscall CSmallSpinLock::SetSpinCount(unsigned short)
?SetSpinCount@CSmallSpinLock@@QAE_NG@Z
; public: bool __thiscall CSpinLock::SetSpinCount(unsigned short)
?SetSpinCount@CSpinLock@@QAE_NG@Z
; public: void __thiscall EXTLOG_DATETIME_CACHE::SetSystemTime(struct _SYSTEMTIME *)
?SetSystemTime@EXTLOG_DATETIME_CACHE@@QAEXPAU_SYSTEMTIME@@@Z
; public: void __thiscall CLKRHashTable::SetTableLockSpinCount(unsigned short)
?SetTableLockSpinCount@CLKRHashTable@@QAEXG@Z
; public: void __thiscall CLKRLinearHashTable::SetTableLockSpinCount(unsigned short)
?SetTableLockSpinCount@CLKRLinearHashTable@@QAEXG@Z
; public: int __thiscall CDateTime::SetTime(struct _FILETIME const &)
?SetTime@CDateTime@@QAEHABU_FILETIME@@@Z
; public: int __thiscall CDateTime::SetTime(struct _SYSTEMTIME const &)
?SetTime@CDateTime@@QAEHABU_SYSTEMTIME@@@Z
; public: void __thiscall BUFFER_CHAIN_ITEM::SetUsed(unsigned long)
?SetUsed@BUFFER_CHAIN_ITEM@@QAEXK@Z
; public: void __thiscall BUFFER::SetValid(int)
?SetValid@BUFFER@@QAEXH@Z
; public: unsigned long __thiscall CLKRHashTable::Size(void)const 
?Size@CLKRHashTable@@QBEKXZ
; public: unsigned long __thiscall CLKRLinearHashTable::Size(void)const 
?Size@CLKRLinearHashTable@@QBEKXZ
; private: unsigned char __thiscall CSharelock::SleepWaitingForLock(int)
?SleepWaitingForLock@CSharelock@@AAEEH@Z
StringTimeToFileTime
; public: int __thiscall EVENT_LOG::Success(void)const 
?Success@EVENT_LOG@@QBEHXZ
; public: void __thiscall STRA::SyncWithBuffer(void)
?SyncWithBuffer@STRA@@QAEXXZ
; public: void __thiscall STRU::SyncWithBuffer(void)
?SyncWithBuffer@STRU@@QAEXXZ
SystemTimeToGMT
SystemTimeToGMTEx
; public: int __thiscall CEtwTracer::TracePerUrlEnabled(void)
?TracePerUrlEnabled@CEtwTracer@@QAEHXZ
; public: bool __thiscall CReaderWriterLock3::TryConvertSharedToExclusive(void)
?TryConvertSharedToExclusive@CReaderWriterLock3@@QAE_NXZ
; public: bool __thiscall CCritSec::TryReadLock(void)
?TryReadLock@CCritSec@@QAE_NXZ
; public: bool __thiscall CFakeLock::TryReadLock(void)
?TryReadLock@CFakeLock@@QAE_NXZ
; public: bool __thiscall CReaderWriterLock2::TryReadLock(void)
?TryReadLock@CReaderWriterLock2@@QAE_NXZ
; public: bool __thiscall CReaderWriterLock3::TryReadLock(void)
?TryReadLock@CReaderWriterLock3@@QAE_NXZ
; public: bool __thiscall CReaderWriterLock::TryReadLock(void)
?TryReadLock@CReaderWriterLock@@QAE_NXZ
; public: bool __thiscall CRtlResource::TryReadLock(void)
?TryReadLock@CRtlResource@@QAE_NXZ
; public: bool __thiscall CShareLock::TryReadLock(void)
?TryReadLock@CShareLock@@QAE_NXZ
; public: bool __thiscall CSmallSpinLock::TryReadLock(void)
?TryReadLock@CSmallSpinLock@@QAE_NXZ
; public: bool __thiscall CSpinLock::TryReadLock(void)
?TryReadLock@CSpinLock@@QAE_NXZ
; public: bool __thiscall CCritSec::TryWriteLock(void)
?TryWriteLock@CCritSec@@QAE_NXZ
; public: bool __thiscall CFakeLock::TryWriteLock(void)
?TryWriteLock@CFakeLock@@QAE_NXZ
; public: bool __thiscall CReaderWriterLock2::TryWriteLock(void)
?TryWriteLock@CReaderWriterLock2@@QAE_NXZ
; public: bool __thiscall CReaderWriterLock3::TryWriteLock(void)
?TryWriteLock@CReaderWriterLock3@@QAE_NXZ
; public: bool __thiscall CReaderWriterLock::TryWriteLock(void)
?TryWriteLock@CReaderWriterLock@@QAE_NXZ
; public: bool __thiscall CRtlResource::TryWriteLock(void)
?TryWriteLock@CRtlResource@@QAE_NXZ
; public: bool __thiscall CShareLock::TryWriteLock(void)
?TryWriteLock@CShareLock@@QAE_NXZ
; public: bool __thiscall CSmallSpinLock::TryWriteLock(void)
?TryWriteLock@CSmallSpinLock@@QAE_NXZ
; public: bool __thiscall CSpinLock::TryWriteLock(void)
?TryWriteLock@CSpinLock@@QAE_NXZ
; long __stdcall UlCleanAndCopyUrl(unsigned char *,unsigned long,unsigned long *,unsigned short *,unsigned short * *)
?UlCleanAndCopyUrl@@YGJPAEKPAKPAGPAPAG@Z
; public: unsigned long __thiscall CEtwTracer::UnRegister(void)
?UnRegister@CEtwTracer@@QAEKXZ
; public: int __thiscall STR::Unescape(void)
?Unescape@STR@@QAEHXZ
; public: long __thiscall STRA::Unescape(void)
?Unescape@STRA@@QAEJXZ
; public: long __thiscall STRU::Unescape(void)
?Unescape@STRU@@QAEJXZ
; public: void __thiscall STR::Unhash(void)
?Unhash@STR@@QAEXXZ
; private: void __thiscall ALLOC_CACHE_HANDLER::Unlock(void)
?Unlock@ALLOC_CACHE_HANDLER@@AAEXXZ
; public: void __thiscall CLockedDoubleList::Unlock(void)
?Unlock@CLockedDoubleList@@QAEXXZ
; public: void __thiscall CLockedSingleList::Unlock(void)
?Unlock@CLockedSingleList@@QAEXXZ
; private: void __thiscall HASH_TABLE_BUCKET::Unlock(void)
?Unlock@HASH_TABLE_BUCKET@@AAEXXZ
; public: void __thiscall TS_RESOURCE::Unlock(void)
?Unlock@TS_RESOURCE@@QAEXXZ
; public: unsigned char __thiscall CSharelock::UpdateMaxSpins(int)
?UpdateMaxSpins@CSharelock@@QAEEH@Z
; public: unsigned char __thiscall CSharelock::UpdateMaxUsers(int)
?UpdateMaxUsers@CSharelock@@QAEEH@Z
; public: bool __thiscall CLKRHashTable::ValidSignature(void)const 
?ValidSignature@CLKRHashTable@@QBE_NXZ
; public: bool __thiscall CLKRLinearHashTable::ValidSignature(void)const 
?ValidSignature@CLKRLinearHashTable@@QBE_NXZ
; private: void __thiscall BUFFER::VerifyState(void)const 
?VerifyState@BUFFER@@ABEXXZ
; private: unsigned char __thiscall CSharelock::WaitForExclusiveLock(int)
?WaitForExclusiveLock@CSharelock@@AAEEH@Z
; private: unsigned char __thiscall CSharelock::WaitForShareLock(int)
?WaitForShareLock@CSharelock@@AAEEH@Z
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<1,1,3,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$00$00$02$00$02$01@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<2,1,1,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$01$00$00$00$02$01@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<3,1,1,1,1,1>::WaitType(void)
?WaitType@?$CLockBase@$02$00$00$00$00$00@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<4,1,1,2,3,3>::WaitType(void)
?WaitType@?$CLockBase@$03$00$00$01$02$02@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<5,2,1,2,3,3>::WaitType(void)
?WaitType@?$CLockBase@$04$01$00$01$02$02@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<6,2,1,2,3,3>::WaitType(void)
?WaitType@?$CLockBase@$05$01$00$01$02$02@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<7,2,2,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$06$01$01$00$02$01@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<8,2,2,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$07$01$01$00$02$01@@SG?AW4LOCK_WAIT_TYPE@@XZ
; public: static enum LOCK_WAIT_TYPE  __stdcall CLockBase<9,2,1,1,3,2>::WaitType(void)
?WaitType@?$CLockBase@$08$01$00$00$02$01@@SG?AW4LOCK_WAIT_TYPE@@XZ
; private: void __thiscall CSharelock::WakeAllSleepers(void)
?WakeAllSleepers@CSharelock@@AAEXXZ
; public: bool __thiscall CDataCache<struct DATETIME_FORMAT_ENTRY>::Write(struct DATETIME_FORMAT_ENTRY const &)
?Write@?$CDataCache@UDATETIME_FORMAT_ENTRY@@@@QAE_NABUDATETIME_FORMAT_ENTRY@@@Z
; public: bool __thiscall CDataCache<class CDateTime>::Write(class CDateTime const &)
?Write@?$CDataCache@VCDateTime@@@@QAE_NABVCDateTime@@@Z
; public: void __thiscall CCritSec::WriteLock(void)
?WriteLock@CCritSec@@QAEXXZ
; public: void __thiscall CFakeLock::WriteLock(void)
?WriteLock@CFakeLock@@QAEXXZ
; public: void __thiscall CLKRHashTable::WriteLock(void)
?WriteLock@CLKRHashTable@@QAEXXZ
; public: void __thiscall CLKRLinearHashTable::WriteLock(void)
?WriteLock@CLKRLinearHashTable@@QAEXXZ
; public: void __thiscall CReaderWriterLock2::WriteLock(void)
?WriteLock@CReaderWriterLock2@@QAEXXZ
; public: void __thiscall CReaderWriterLock3::WriteLock(void)
?WriteLock@CReaderWriterLock3@@QAEXXZ
; public: void __thiscall CReaderWriterLock::WriteLock(void)
?WriteLock@CReaderWriterLock@@QAEXXZ
; public: void __thiscall CRtlResource::WriteLock(void)
?WriteLock@CRtlResource@@QAEXXZ
; public: void __thiscall CShareLock::WriteLock(void)
?WriteLock@CShareLock@@QAEXXZ
; public: void __thiscall CSmallSpinLock::WriteLock(void)
?WriteLock@CSmallSpinLock@@QAEXXZ
; public: void __thiscall CSpinLock::WriteLock(void)
?WriteLock@CSpinLock@@QAEXXZ
; public: void __thiscall CCritSec::WriteUnlock(void)
?WriteUnlock@CCritSec@@QAEXXZ
; public: void __thiscall CFakeLock::WriteUnlock(void)
?WriteUnlock@CFakeLock@@QAEXXZ
; public: void __thiscall CLKRHashTable::WriteUnlock(void)const 
?WriteUnlock@CLKRHashTable@@QBEXXZ
; public: void __thiscall CLKRLinearHashTable::WriteUnlock(void)const 
?WriteUnlock@CLKRLinearHashTable@@QBEXXZ
; public: void __thiscall CReaderWriterLock2::WriteUnlock(void)
?WriteUnlock@CReaderWriterLock2@@QAEXXZ
; public: void __thiscall CReaderWriterLock3::WriteUnlock(void)
?WriteUnlock@CReaderWriterLock3@@QAEXXZ
; public: void __thiscall CReaderWriterLock::WriteUnlock(void)
?WriteUnlock@CReaderWriterLock@@QAEXXZ
; public: void __thiscall CRtlResource::WriteUnlock(void)
?WriteUnlock@CRtlResource@@QAEXXZ
; public: void __thiscall CShareLock::WriteUnlock(void)
?WriteUnlock@CShareLock@@QAEXXZ
; public: void __thiscall CSmallSpinLock::WriteUnlock(void)
?WriteUnlock@CSmallSpinLock@@QAEXXZ
; public: void __thiscall CSpinLock::WriteUnlock(void)
?WriteUnlock@CSpinLock@@QAEXXZ
ZapRegistryKey
; protected: void __thiscall CLKRLinearHashTable_Iterator::_AddRef(int)const 
?_AddRef@CLKRLinearHashTable_Iterator@@IBEXH@Z
; private: void __thiscall CLKRLinearHashTable::_AddRefRecord(void const *,int)const 
?_AddRefRecord@CLKRLinearHashTable@@ABEXPBXH@Z
; private: static class CNodeClump * __stdcall CLKRLinearHashTable::_AllocateNodeClump(void)
?_AllocateNodeClump@CLKRLinearHashTable@@CGQAVCNodeClump@@XZ
; private: class CSegment * __thiscall CLKRLinearHashTable::_AllocateSegment(void)const 
?_AllocateSegment@CLKRLinearHashTable@@ABEQAVCSegment@@XZ
; private: static class CDirEntry * __stdcall CLKRLinearHashTable::_AllocateSegmentDirectory(unsigned int)
?_AllocateSegmentDirectory@CLKRLinearHashTable@@CGQAVCDirEntry@@I@Z
; private: static class CLKRLinearHashTable * __stdcall CLKRHashTable::_AllocateSubTable(char const *,unsigned long const  (__stdcall*)(void const *),unsigned long (__stdcall*)(unsigned long),bool (__stdcall*)(unsigned long,unsigned long),void (__stdcall*)(void const *,int),double,unsigned long,class CLKRHashTable *,bool)
?_AllocateSubTable@CLKRHashTable@@CGQAVCLKRLinearHashTable@@PBDP6G?BKPBX@ZP6GKK@ZP6G_NKK@ZP6GX1H@ZNKPAV1@_N@Z
; private: static class CLKRLinearHashTable * * __stdcall CLKRHashTable::_AllocateSubTableArray(unsigned int)
?_AllocateSubTableArray@CLKRHashTable@@CGQAPAVCLKRLinearHashTable@@I@Z
; private: unsigned long __thiscall CLKRLinearHashTable::_Apply(enum LK_ACTION  (__stdcall*)(void const *,void *),void *,enum LK_LOCKTYPE,enum LK_PREDICATE &)
?_Apply@CLKRLinearHashTable@@AAEKP6G?AW4LK_ACTION@@PBXPAX@Z1W4LK_LOCKTYPE@@AAW4LK_PREDICATE@@@Z
; private: unsigned long __thiscall CLKRLinearHashTable::_ApplyIf(enum LK_PREDICATE  (__stdcall*)(void const *,void *),enum LK_ACTION  (__stdcall*)(void const *,void *),void *,enum LK_LOCKTYPE,enum LK_PREDICATE &)
?_ApplyIf@CLKRLinearHashTable@@AAEKP6G?AW4LK_PREDICATE@@PBXPAX@ZP6G?AW4LK_ACTION@@01@Z1W4LK_LOCKTYPE@@AAW42@@Z
; private: class CBucket * __thiscall CLKRLinearHashTable::_Bucket(unsigned long)const 
?_Bucket@CLKRLinearHashTable@@ABEPAVCBucket@@K@Z
; private: unsigned long __thiscall CLKRLinearHashTable::_BucketAddress(unsigned long)const 
?_BucketAddress@CLKRLinearHashTable@@ABEKK@Z
; private: unsigned long __thiscall CLKRHashTable::_CalcKeyHash(unsigned long)const 
?_CalcKeyHash@CLKRHashTable@@ABEKK@Z
; private: unsigned long __thiscall CLKRLinearHashTable::_CalcKeyHash(unsigned long)const 
?_CalcKeyHash@CLKRLinearHashTable@@ABEKK@Z
; private: void __thiscall CLKRLinearHashTable::_Clear(bool)
?_Clear@CLKRLinearHashTable@@AAEX_N@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_CloseIterator(class CLKRLinearHashTable::CIterator *)
?_CloseIterator@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; private: bool __thiscall CReaderWriterLock2::_CmpExch(long,long)
?_CmpExch@CReaderWriterLock2@@AAE_NJJ@Z
; private: bool __thiscall CReaderWriterLock3::_CmpExch(long,long)
?_CmpExch@CReaderWriterLock3@@AAE_NJJ@Z
; private: bool __thiscall CReaderWriterLock::_CmpExch(long,long)
?_CmpExch@CReaderWriterLock@@AAE_NJJ@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_Contract(void)
?_Contract@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@XZ
; private: static long __stdcall CReaderWriterLock3::_CurrentThreadId(void)
?_CurrentThreadId@CReaderWriterLock3@@CGJXZ
; private: static long __stdcall CSmallSpinLock::_CurrentThreadId(void)
?_CurrentThreadId@CSmallSpinLock@@CGJXZ
; private: static long __stdcall CSpinLock::_CurrentThreadId(void)
?_CurrentThreadId@CSpinLock@@CGJXZ
; private: unsigned long __thiscall CLKRLinearHashTable::_DeleteIf(enum LK_PREDICATE  (__stdcall*)(void const *,void *),void *,enum LK_PREDICATE &)
?_DeleteIf@CLKRLinearHashTable@@AAEKP6G?AW4LK_PREDICATE@@PBXPAX@Z1AAW42@@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_DeleteKey(unsigned long,unsigned long)
?_DeleteKey@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@KK@Z
; private: bool __thiscall CLKRLinearHashTable::_DeleteNode(class CBucket *,class CNodeClump * &,class CNodeClump * &,int &)
?_DeleteNode@CLKRLinearHashTable@@AAE_NPAVCBucket@@AAPAVCNodeClump@@1AAH@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_DeleteRecord(void const *,unsigned long)
?_DeleteRecord@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@PBXK@Z
; private: bool __thiscall CLKRLinearHashTable::_EqualKeys(unsigned long,unsigned long)const 
?_EqualKeys@CLKRLinearHashTable@@ABE_NKK@Z
; private: bool __thiscall CLKRLinearHashTable::_Erase(class CLKRLinearHashTable_Iterator &,unsigned long)
?_Erase@CLKRLinearHashTable@@AAE_NAAVCLKRLinearHashTable_Iterator@@K@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_Expand(void)
?_Expand@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@XZ
; private: unsigned long const  __thiscall CLKRHashTable::_ExtractKey(void const *)const 
?_ExtractKey@CLKRHashTable@@ABE?BKPBX@Z
; private: unsigned long const  __thiscall CLKRLinearHashTable::_ExtractKey(void const *)const 
?_ExtractKey@CLKRLinearHashTable@@ABE?BKPBX@Z
; private: class CBucket * __thiscall CLKRLinearHashTable::_FindBucket(unsigned long,bool)const 
?_FindBucket@CLKRLinearHashTable@@ABEPAVCBucket@@K_N@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_FindKey(unsigned long,unsigned long,void const * *,class CLKRLinearHashTable_Iterator *)const 
?_FindKey@CLKRLinearHashTable@@ABE?AW4LK_RETCODE@@KKPAPBXPAVCLKRLinearHashTable_Iterator@@@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_FindRecord(void const *,unsigned long)const 
?_FindRecord@CLKRLinearHashTable@@ABE?AW4LK_RETCODE@@PBXK@Z
; private: static bool __stdcall CLKRLinearHashTable::_FreeNodeClump(class CNodeClump *)
?_FreeNodeClump@CLKRLinearHashTable@@CG_NPAVCNodeClump@@@Z
; private: bool __thiscall CLKRLinearHashTable::_FreeSegment(class CSegment *)const 
?_FreeSegment@CLKRLinearHashTable@@ABE_NPAVCSegment@@@Z
; private: bool __thiscall CLKRLinearHashTable::_FreeSegmentDirectory(void)
?_FreeSegmentDirectory@CLKRLinearHashTable@@AAE_NXZ
; private: static bool __stdcall CLKRHashTable::_FreeSubTable(class CLKRLinearHashTable *)
?_FreeSubTable@CLKRHashTable@@CG_NPAVCLKRLinearHashTable@@@Z
; private: static bool __stdcall CLKRHashTable::_FreeSubTableArray(class CLKRLinearHashTable * *)
?_FreeSubTableArray@CLKRHashTable@@CG_NPAPAVCLKRLinearHashTable@@@Z
; private: unsigned long __thiscall CLKRLinearHashTable::_H0(unsigned long)const 
?_H0@CLKRLinearHashTable@@ABEKK@Z
; private: static unsigned long __stdcall CLKRLinearHashTable::_H0(unsigned long,unsigned long)
?_H0@CLKRLinearHashTable@@CGKKK@Z
; private: unsigned long __thiscall CLKRLinearHashTable::_H1(unsigned long)const 
?_H1@CLKRLinearHashTable@@ABEKK@Z
; private: static unsigned long __stdcall CLKRLinearHashTable::_H1(unsigned long,unsigned long)
?_H1@CLKRLinearHashTable@@CGKKK@Z
; protected: bool __thiscall CLKRHashTable_Iterator::_Increment(bool)
?_Increment@CLKRHashTable_Iterator@@IAE_N_N@Z
; protected: bool __thiscall CLKRLinearHashTable_Iterator::_Increment(bool)
?_Increment@CLKRLinearHashTable_Iterator@@IAE_N_N@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_Initialize(unsigned long const  (__stdcall*)(void const *),unsigned long (__stdcall*)(unsigned long),bool (__stdcall*)(unsigned long,unsigned long),void (__stdcall*)(void const *,int),char const *,double,unsigned long)
?_Initialize@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@P6G?BKPBX@ZP6GKK@ZP6G_NKK@ZP6GX0H@ZPBDNK@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_InitializeIterator(class CLKRLinearHashTable::CIterator *)
?_InitializeIterator@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@PAVCIterator@1@@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_InsertRecord(void const *,unsigned long,bool,class CLKRLinearHashTable_Iterator *)
?_InsertRecord@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@PBXK_NPAVCLKRLinearHashTable_Iterator@@@Z
; private: void __thiscall CLKRHashTable::_InsertThisIntoGlobalList(void)
?_InsertThisIntoGlobalList@CLKRHashTable@@AAEXXZ
; private: void __thiscall CLKRLinearHashTable::_InsertThisIntoGlobalList(void)
?_InsertThisIntoGlobalList@CLKRLinearHashTable@@AAEXXZ
; private: bool __thiscall CSpinLock::_IsLocked(void)const 
?_IsLocked@CSpinLock@@ABE_NXZ
; private: int __thiscall CLKRLinearHashTable::_IsNodeCompact(class CBucket * const)const 
?_IsNodeCompact@CLKRLinearHashTable@@ABEHQAVCBucket@@@Z
; private: bool __thiscall CLKRHashTable::_IsValidIterator(class CLKRHashTable_Iterator const &)const 
?_IsValidIterator@CLKRHashTable@@ABE_NABVCLKRHashTable_Iterator@@@Z
; private: bool __thiscall CLKRLinearHashTable::_IsValidIterator(class CLKRLinearHashTable_Iterator const &)const 
?_IsValidIterator@CLKRLinearHashTable@@ABE_NABVCLKRLinearHashTable_Iterator@@@Z
; private: void __thiscall CSpinLock::_Lock(void)
?_Lock@CSpinLock@@AAEXXZ
; private: void __thiscall CReaderWriterLock2::_LockSpin(bool)
?_LockSpin@CReaderWriterLock2@@AAEX_N@Z
; private: void __thiscall CReaderWriterLock3::_LockSpin(enum CReaderWriterLock3::SPIN_TYPE)
?_LockSpin@CReaderWriterLock3@@AAEXW4SPIN_TYPE@1@@Z
; private: void __thiscall CReaderWriterLock::_LockSpin(bool)
?_LockSpin@CReaderWriterLock@@AAEX_N@Z
; private: void __thiscall CSmallSpinLock::_LockSpin(void)
?_LockSpin@CSmallSpinLock@@AAEXXZ
; private: void __thiscall CSpinLock::_LockSpin(void)
?_LockSpin@CSpinLock@@AAEXXZ
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_MergeRecordSets(class CBucket *,class CNodeClump *,class CNodeClump *)
?_MergeRecordSets@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@PAVCBucket@@PAVCNodeClump@@1@Z
; private: static enum LK_PREDICATE  __stdcall CLKRLinearHashTable::_PredTrue(void const *,void *)
?_PredTrue@CLKRLinearHashTable@@CG?AW4LK_PREDICATE@@PBXPAX@Z
; private: void __thiscall CReaderWriterLock2::_ReadLockSpin(void)
?_ReadLockSpin@CReaderWriterLock2@@AAEXXZ
; private: void __thiscall CReaderWriterLock3::_ReadLockSpin(enum CReaderWriterLock3::SPIN_TYPE)
?_ReadLockSpin@CReaderWriterLock3@@AAEXW4SPIN_TYPE@1@@Z
; private: void __thiscall CReaderWriterLock::_ReadLockSpin(void)
?_ReadLockSpin@CReaderWriterLock@@AAEXXZ
; protected: static void __stdcall CDataCache<struct DATETIME_FORMAT_ENTRY>::_ReadMemoryBarrier(void)
?_ReadMemoryBarrier@?$CDataCache@UDATETIME_FORMAT_ENTRY@@@@KGXXZ
; protected: static void __stdcall CDataCache<class CDateTime>::_ReadMemoryBarrier(void)
?_ReadMemoryBarrier@?$CDataCache@VCDateTime@@@@KGXXZ
; private: bool __thiscall CLKRLinearHashTable::_ReadOrWriteLock(void)const 
?_ReadOrWriteLock@CLKRLinearHashTable@@ABE_NXZ
; private: void __thiscall CLKRLinearHashTable::_ReadOrWriteUnlock(bool)const 
?_ReadOrWriteUnlock@CLKRLinearHashTable@@ABEX_N@Z
; protected: long __thiscall CDataCache<struct DATETIME_FORMAT_ENTRY>::_ReadSequence(void)const 
?_ReadSequence@?$CDataCache@UDATETIME_FORMAT_ENTRY@@@@IBEJXZ
; protected: long __thiscall CDataCache<class CDateTime>::_ReadSequence(void)const 
?_ReadSequence@?$CDataCache@VCDateTime@@@@IBEJXZ
; private: void __thiscall CLKRHashTable::_RemoveThisFromGlobalList(void)
?_RemoveThisFromGlobalList@CLKRHashTable@@AAEXXZ
; private: void __thiscall CLKRLinearHashTable::_RemoveThisFromGlobalList(void)
?_RemoveThisFromGlobalList@CLKRLinearHashTable@@AAEXXZ
; private: unsigned long __thiscall CLKRLinearHashTable::_SegIndex(unsigned long)const 
?_SegIndex@CLKRLinearHashTable@@ABEKK@Z
; private: class CSegment * & __thiscall CLKRLinearHashTable::_Segment(unsigned long)const 
?_Segment@CLKRLinearHashTable@@ABEAAPAVCSegment@@K@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_SetSegVars(enum LK_TABLESIZE,unsigned long)
?_SetSegVars@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@W4LK_TABLESIZE@@K@Z
; protected: long __thiscall CDataCache<struct DATETIME_FORMAT_ENTRY>::_SetSequence(long)
?_SetSequence@?$CDataCache@UDATETIME_FORMAT_ENTRY@@@@IAEJJ@Z
; protected: long __thiscall CDataCache<class CDateTime>::_SetSequence(long)
?_SetSequence@?$CDataCache@VCDateTime@@@@IAEJJ@Z
; private: enum LK_RETCODE  __thiscall CLKRLinearHashTable::_SplitRecordSet(class CNodeClump *,class CNodeClump *,unsigned long,unsigned long,unsigned long,class CNodeClump *)
?_SplitRecordSet@CLKRLinearHashTable@@AAE?AW4LK_RETCODE@@PAVCNodeClump@@0KKK0@Z
; private: class CLKRLinearHashTable * __thiscall CLKRHashTable::_SubTable(unsigned long)const 
?_SubTable@CLKRHashTable@@ABEPAVCLKRLinearHashTable@@K@Z
; private: int __thiscall CLKRHashTable::_SubTableIndex(class CLKRLinearHashTable *)const 
?_SubTableIndex@CLKRHashTable@@ABEHPAVCLKRLinearHashTable@@@Z
; private: bool __thiscall CSmallSpinLock::_TryLock(void)
?_TryLock@CSmallSpinLock@@AAE_NXZ
; private: bool __thiscall CSpinLock::_TryLock(void)
?_TryLock@CSpinLock@@AAE_NXZ
; private: bool __thiscall CReaderWriterLock2::_TryReadLock(void)
?_TryReadLock@CReaderWriterLock2@@AAE_NXZ
; private: bool __thiscall CReaderWriterLock3::_TryReadLock(void)
?_TryReadLock@CReaderWriterLock3@@AAE_NXZ
; private: bool __thiscall CReaderWriterLock::_TryReadLock(void)
?_TryReadLock@CReaderWriterLock@@AAE_NXZ
; private: bool __thiscall CReaderWriterLock3::_TryReadLockRecursive(void)
?_TryReadLockRecursive@CReaderWriterLock3@@AAE_NXZ
; private: bool __thiscall CReaderWriterLock3::_TryWriteLock2(void)
?_TryWriteLock2@CReaderWriterLock3@@AAE_NXZ
; private: bool __thiscall CReaderWriterLock2::_TryWriteLock(long)
?_TryWriteLock@CReaderWriterLock2@@AAE_NJ@Z
; private: bool __thiscall CReaderWriterLock3::_TryWriteLock(long)
?_TryWriteLock@CReaderWriterLock3@@AAE_NJ@Z
; private: bool __thiscall CReaderWriterLock::_TryWriteLock(void)
?_TryWriteLock@CReaderWriterLock@@AAE_NXZ
; private: void __thiscall CSpinLock::_Unlock(void)
?_Unlock@CSpinLock@@AAEXXZ
; private: void __thiscall CReaderWriterLock2::_WriteLockSpin(void)
?_WriteLockSpin@CReaderWriterLock2@@AAEXXZ
; private: void __thiscall CReaderWriterLock3::_WriteLockSpin(void)
?_WriteLockSpin@CReaderWriterLock3@@AAEXXZ
; private: void __thiscall CReaderWriterLock::_WriteLockSpin(void)
?_WriteLockSpin@CReaderWriterLock@@AAEXXZ
; long const * const  `public: static long const * __stdcall CLKRHashTableStats::BucketSizes(void)'::`2'::s_aBucketSizes
?s_aBucketSizes@?1??BucketSizes@CLKRHashTableStats@@SGPBJXZ@4QBJB
; private: static struct _RTL_CRITICAL_SECTION  ALLOC_CACHE_HANDLER::sm_csItems
?sm_csItems@ALLOC_CACHE_HANDLER@@0U_RTL_CRITICAL_SECTION@@A DATA
; 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  CRtlResource::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CRtlResource@@1NA DATA
; protected: static double  CShareLock::sm_dblDfltSpinAdjFctr
?sm_dblDfltSpinAdjFctr@CShareLock@@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 int  ALLOC_CACHE_HANDLER::sm_fInitCsItems
?sm_fInitCsItems@ALLOC_CACHE_HANDLER@@0HA DATA
; private: static void *  ALLOC_CACHE_HANDLER::sm_hTimer
?sm_hTimer@ALLOC_CACHE_HANDLER@@0PAXA DATA
; private: static struct _LIST_ENTRY  ALLOC_CACHE_HANDLER::sm_lItemsHead
?sm_lItemsHead@ALLOC_CACHE_HANDLER@@0U_LIST_ENTRY@@A 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 long  ALLOC_CACHE_HANDLER::sm_nFillPattern
?sm_nFillPattern@ALLOC_CACHE_HANDLER@@0JA DATA
; protected: static class ALLOC_CACHE_HANDLER *  CLKRLinearHashTable::sm_palloc
?sm_palloc@CLKRLinearHashTable@@1PAVALLOC_CACHE_HANDLER@@A 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  CRtlResource::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CRtlResource@@1GA DATA
; protected: static unsigned short  CShareLock::sm_wDefaultSpinCount
?sm_wDefaultSpinCount@CShareLock@@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
CreateRefTraceLog
CreateTraceLog
DestroyRefTraceLog
DestroyTraceLog
DllMain
_GetAllocCounters@0
GetCurrentTimeInMilliseconds
GetCurrentTimeInSeconds
GetQueryType
IISCaptureStackBackTrace
_IISGetCurrentTime@8
IISGetPlatformType
IISInitializeCriticalSection
IISSetCriticalSectionSpinCount
IisCalloc
IisFree
IisHeap
IisMalloc
IisReAlloc
InetAcquireResourceExclusive
InetAcquireResourceShared
InetConvertExclusiveToShared
InetConvertSharedToExclusive
InetDeleteResource
InetInitializeResource
InetReleaseResource
InitializeIISRTL
InitializeSecondsTimer
IsNumberInUnicodeList
LKRHashTableInit
LKRHashTableUninit
MIDL_user_allocate
MIDL_user_free
MonBuildInstanceDefinition
PuCloseDbgPrintFile
PuCreateDebugPrintsObject
PuDbgAssertFailed
PuDbgCaptureContext
PuDbgCreateEvent
PuDbgCreateMutex
PuDbgCreateSemaphore
PuDbgDump
PuDbgPrint
PuDbgPrintW
PuDeleteDebugPrintsObject
PuLoadDebugFlagsFromReg
PuLoadDebugFlagsFromRegStr
ResetTraceLog
RpcBindHandleForServer
RpcBindHandleFree
RpcBindHandleOverLpc
RpcBindHandleOverNamedPipe
RpcBindHandleOverTcpIp
RpcuFindProtocolToUse
TerminateIISRTL
TerminateSecondsTimer
WriteRefTraceLog
WriteRefTraceLogEx
WriteTraceLog
_stristr@8
