;
; Definition file of msvcr100.dll
; Automatic generated by gendef
; written by Kai Tietz 2008
;
LIBRARY "msvcr100.dll"
EXPORTS

#include "msvcrt-common.def.in"

$I10_OUTPUT
; public: __cdecl Concurrency::details::<0x1ULL>::<0x1ULL>(void(__cdecl *)(void))__ptr64 
??0?$_SpinWait@$00@details@Concurrency@@QEAA@P6AXXZ@Z
; public: __cdecl Concurrency::details::<0x0ULL>::<0x0ULL>(void(__cdecl *)(void))__ptr64 
??0?$_SpinWait@$0A@@details@Concurrency@@QEAA@P6AXXZ@Z
; public: __cdecl Concurrency::SchedulerPolicy::SchedulerPolicy(class Concurrency::SchedulerPolicy const &__ptr64 )__ptr64 
??0SchedulerPolicy@Concurrency@@QEAA@AEBV01@@Z
; public: __cdecl Concurrency::SchedulerPolicy::SchedulerPolicy(void)__ptr64 
??0SchedulerPolicy@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::SchedulerPolicy::SchedulerPolicy(unsigned __int64,...)__ptr64 
??0SchedulerPolicy@Concurrency@@QEAA@_KZZ
; public: __cdecl Concurrency::details::_NonReentrantBlockingLock::_NonReentrantBlockingLock(void)__ptr64 
??0_NonReentrantBlockingLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_NonReentrantPPLLock::_NonReentrantPPLLock(void)__ptr64 
??0_NonReentrantPPLLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_ReaderWriterLock::_ReaderWriterLock(void)__ptr64 
??0_ReaderWriterLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_ReentrantBlockingLock::_ReentrantBlockingLock(void)__ptr64 
??0_ReentrantBlockingLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_ReentrantLock::_ReentrantLock(void)__ptr64 
??0_ReentrantLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_ReentrantPPLLock::_ReentrantPPLLock(void)__ptr64 
??0_ReentrantPPLLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_NonReentrantPPLLock::_Scoped_lock::_Scoped_lock(class Concurrency::details::_NonReentrantPPLLock &__ptr64 )__ptr64 
??0_Scoped_lock@_NonReentrantPPLLock@details@Concurrency@@QEAA@AEAV123@@Z
; public: __cdecl Concurrency::details::_ReentrantPPLLock::_Scoped_lock::_Scoped_lock(class Concurrency::details::_ReentrantPPLLock &__ptr64 )__ptr64 
??0_Scoped_lock@_ReentrantPPLLock@details@Concurrency@@QEAA@AEAV123@@Z
; public: __cdecl Concurrency::details::_SpinLock::_SpinLock(long volatile &__ptr64 )__ptr64 
??0_SpinLock@details@Concurrency@@QEAA@AECJ@Z
; public: __cdecl Concurrency::details::_TaskCollection::_TaskCollection(void)__ptr64 
??0_TaskCollection@details@Concurrency@@QEAA@XZ
; protected: __cdecl Concurrency::details::_Timer::_Timer(unsigned int,bool)__ptr64 
??0_Timer@details@Concurrency@@IEAA@I_N@Z
; public: __cdecl std::__non_rtti_object::__non_rtti_object(class std::__non_rtti_object const &__ptr64 )__ptr64 
??0__non_rtti_object@std@@QEAA@AEBV01@@Z
; public: __cdecl std::__non_rtti_object::__non_rtti_object(char const *__ptr64)__ptr64 
??0__non_rtti_object@std@@QEAA@PEBD@Z
; private: __cdecl std::bad_cast::bad_cast(char const *__ptr64 const *__ptr64)__ptr64 
??0bad_cast@std@@AEAA@PEBQEBD@Z
; public: __cdecl std::bad_cast::bad_cast(class std::bad_cast const &__ptr64 )__ptr64 
??0bad_cast@std@@QEAA@AEBV01@@Z
; public: __cdecl std::bad_cast::bad_cast(char const *__ptr64)__ptr64 
??0bad_cast@std@@QEAA@PEBD@Z
; public: __cdecl Concurrency::bad_target::bad_target(char const *__ptr64)__ptr64 
??0bad_target@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::bad_target::bad_target(void)__ptr64 
??0bad_target@Concurrency@@QEAA@XZ
; public: __cdecl std::bad_typeid::bad_typeid(class std::bad_typeid const &__ptr64 )__ptr64 
??0bad_typeid@std@@QEAA@AEBV01@@Z
; public: __cdecl std::bad_typeid::bad_typeid(char const *__ptr64)__ptr64 
??0bad_typeid@std@@QEAA@PEBD@Z
; public: __cdecl Concurrency::context_self_unblock::context_self_unblock(char const *__ptr64)__ptr64 
??0context_self_unblock@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::context_self_unblock::context_self_unblock(void)__ptr64 
??0context_self_unblock@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::context_unblock_unbalanced::context_unblock_unbalanced(char const *__ptr64)__ptr64 
??0context_unblock_unbalanced@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::context_unblock_unbalanced::context_unblock_unbalanced(void)__ptr64 
??0context_unblock_unbalanced@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::critical_section::critical_section(void)__ptr64 
??0critical_section@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::default_scheduler_exists::default_scheduler_exists(char const *__ptr64)__ptr64 
??0default_scheduler_exists@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::default_scheduler_exists::default_scheduler_exists(void)__ptr64 
??0default_scheduler_exists@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::event::event(void)__ptr64 
??0event@Concurrency@@QEAA@XZ
; public: __cdecl std::exception::exception(char const *__ptr64 const &__ptr64 )__ptr64 
??0exception@std@@QEAA@AEBQEBD@Z
; public: __cdecl std::exception::exception(char const *__ptr64 const &__ptr64 ,int)__ptr64 
??0exception@std@@QEAA@AEBQEBDH@Z
; public: __cdecl std::exception::exception(class std::exception const &__ptr64 )__ptr64 
??0exception@std@@QEAA@AEBV01@@Z
; public: __cdecl std::exception::exception(void)__ptr64 
??0exception@std@@QEAA@XZ
; public: __cdecl Concurrency::improper_lock::improper_lock(char const *__ptr64)__ptr64 
??0improper_lock@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::improper_lock::improper_lock(void)__ptr64 
??0improper_lock@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::improper_scheduler_attach::improper_scheduler_attach(char const *__ptr64)__ptr64 
??0improper_scheduler_attach@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::improper_scheduler_attach::improper_scheduler_attach(void)__ptr64 
??0improper_scheduler_attach@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::improper_scheduler_detach::improper_scheduler_detach(char const *__ptr64)__ptr64 
??0improper_scheduler_detach@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::improper_scheduler_detach::improper_scheduler_detach(void)__ptr64 
??0improper_scheduler_detach@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::improper_scheduler_reference::improper_scheduler_reference(char const *__ptr64)__ptr64 
??0improper_scheduler_reference@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::improper_scheduler_reference::improper_scheduler_reference(void)__ptr64 
??0improper_scheduler_reference@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::invalid_link_target::invalid_link_target(char const *__ptr64)__ptr64 
??0invalid_link_target@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::invalid_link_target::invalid_link_target(void)__ptr64 
??0invalid_link_target@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::invalid_multiple_scheduling::invalid_multiple_scheduling(char const *__ptr64)__ptr64 
??0invalid_multiple_scheduling@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::invalid_multiple_scheduling::invalid_multiple_scheduling(void)__ptr64 
??0invalid_multiple_scheduling@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::invalid_operation::invalid_operation(char const *__ptr64)__ptr64 
??0invalid_operation@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::invalid_operation::invalid_operation(void)__ptr64 
??0invalid_operation@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::invalid_oversubscribe_operation::invalid_oversubscribe_operation(char const *__ptr64)__ptr64 
??0invalid_oversubscribe_operation@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::invalid_oversubscribe_operation::invalid_oversubscribe_operation(void)__ptr64 
??0invalid_oversubscribe_operation@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::invalid_scheduler_policy_key::invalid_scheduler_policy_key(char const *__ptr64)__ptr64 
??0invalid_scheduler_policy_key@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::invalid_scheduler_policy_key::invalid_scheduler_policy_key(void)__ptr64 
??0invalid_scheduler_policy_key@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::invalid_scheduler_policy_thread_specification::invalid_scheduler_policy_thread_specification(char const *__ptr64)__ptr64 
??0invalid_scheduler_policy_thread_specification@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::invalid_scheduler_policy_thread_specification::invalid_scheduler_policy_thread_specification(void)__ptr64 
??0invalid_scheduler_policy_thread_specification@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::invalid_scheduler_policy_value::invalid_scheduler_policy_value(char const *__ptr64)__ptr64 
??0invalid_scheduler_policy_value@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::invalid_scheduler_policy_value::invalid_scheduler_policy_value(void)__ptr64 
??0invalid_scheduler_policy_value@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::message_not_found::message_not_found(char const *__ptr64)__ptr64 
??0message_not_found@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::message_not_found::message_not_found(void)__ptr64 
??0message_not_found@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::missing_wait::missing_wait(char const *__ptr64)__ptr64 
??0missing_wait@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::missing_wait::missing_wait(void)__ptr64 
??0missing_wait@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::nested_scheduler_missing_detach::nested_scheduler_missing_detach(char const *__ptr64)__ptr64 
??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::nested_scheduler_missing_detach::nested_scheduler_missing_detach(void)__ptr64 
??0nested_scheduler_missing_detach@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::operation_timed_out::operation_timed_out(char const *__ptr64)__ptr64 
??0operation_timed_out@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::operation_timed_out::operation_timed_out(void)__ptr64 
??0operation_timed_out@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::reader_writer_lock::reader_writer_lock(void)__ptr64 
??0reader_writer_lock@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::scheduler_not_attached::scheduler_not_attached(char const *__ptr64)__ptr64 
??0scheduler_not_attached@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::scheduler_not_attached::scheduler_not_attached(void)__ptr64 
??0scheduler_not_attached@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::scheduler_resource_allocation_error::scheduler_resource_allocation_error(long)__ptr64 
??0scheduler_resource_allocation_error@Concurrency@@QEAA@J@Z
; public: __cdecl Concurrency::scheduler_resource_allocation_error::scheduler_resource_allocation_error(char const *__ptr64,long)__ptr64 
??0scheduler_resource_allocation_error@Concurrency@@QEAA@PEBDJ@Z
; public: __cdecl Concurrency::critical_section::scoped_lock::scoped_lock(class Concurrency::critical_section &__ptr64 )__ptr64 
??0scoped_lock@critical_section@Concurrency@@QEAA@AEAV12@@Z
; public: __cdecl Concurrency::reader_writer_lock::scoped_lock::scoped_lock(class Concurrency::reader_writer_lock &__ptr64 )__ptr64 
??0scoped_lock@reader_writer_lock@Concurrency@@QEAA@AEAV12@@Z
; public: __cdecl Concurrency::reader_writer_lock::scoped_lock_read::scoped_lock_read(class Concurrency::reader_writer_lock &__ptr64 )__ptr64 
??0scoped_lock_read@reader_writer_lock@Concurrency@@QEAA@AEAV12@@Z
; public: __cdecl Concurrency::details::task_canceled::task_canceled(char const *__ptr64)__ptr64 
??0task_canceled@details@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::details::task_canceled::task_canceled(void)__ptr64 
??0task_canceled@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::unsupported_os::unsupported_os(char const *__ptr64)__ptr64 
??0unsupported_os@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::unsupported_os::unsupported_os(void)__ptr64 
??0unsupported_os@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::SchedulerPolicy::~SchedulerPolicy(void)__ptr64 
??1SchedulerPolicy@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_NonReentrantBlockingLock::~_NonReentrantBlockingLock(void)__ptr64 
??1_NonReentrantBlockingLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_ReentrantBlockingLock::~_ReentrantBlockingLock(void)__ptr64 
??1_ReentrantBlockingLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_NonReentrantPPLLock::_Scoped_lock::~_Scoped_lock(void)__ptr64 
??1_Scoped_lock@_NonReentrantPPLLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_ReentrantPPLLock::_Scoped_lock::~_Scoped_lock(void)__ptr64 
??1_Scoped_lock@_ReentrantPPLLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_SpinLock::~_SpinLock(void)__ptr64 
??1_SpinLock@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_TaskCollection::~_TaskCollection(void)__ptr64 
??1_TaskCollection@details@Concurrency@@QEAA@XZ
; protected: __cdecl Concurrency::details::_Timer::~_Timer(void)__ptr64 
??1_Timer@details@Concurrency@@IEAA@XZ
; public: virtual __cdecl std::__non_rtti_object::~__non_rtti_object(void)__ptr64 
??1__non_rtti_object@std@@UEAA@XZ
; public: virtual __cdecl std::bad_cast::~bad_cast(void)__ptr64 
??1bad_cast@std@@UEAA@XZ
; public: virtual __cdecl std::bad_typeid::~bad_typeid(void)__ptr64 
??1bad_typeid@std@@UEAA@XZ
; public: __cdecl Concurrency::critical_section::~critical_section(void)__ptr64 
??1critical_section@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::event::~event(void)__ptr64 
??1event@Concurrency@@QEAA@XZ
; public: virtual __cdecl std::exception::~exception(void)__ptr64 
??1exception@std@@UEAA@XZ
; public: __cdecl Concurrency::reader_writer_lock::~reader_writer_lock(void)__ptr64 
??1reader_writer_lock@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::critical_section::scoped_lock::~scoped_lock(void)__ptr64 
??1scoped_lock@critical_section@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::reader_writer_lock::scoped_lock::~scoped_lock(void)__ptr64 
??1scoped_lock@reader_writer_lock@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::reader_writer_lock::scoped_lock_read::~scoped_lock_read(void)__ptr64 
??1scoped_lock_read@reader_writer_lock@Concurrency@@QEAA@XZ
; public: virtual __cdecl type_info::~type_info(void)__ptr64 
??1type_info@@UEAA@XZ
; void *__ptr64 __cdecl operator new(unsigned __int64)
??2@YAPEAX_K@Z
; void *__ptr64 __cdecl operator new(unsigned __int64,int,char const *__ptr64,int)
??2@YAPEAX_KHPEBDH@Z
; void __cdecl operator delete(void *__ptr64)
??3@YAXPEAX@Z
; public: class Concurrency::details::<0x1ULL> &__ptr64 __cdecl Concurrency::details::<0x1ULL>::operator =(class Concurrency::details::<0x1ULL> const &__ptr64 )__ptr64 
??4?$_SpinWait@$00@details@Concurrency@@QEAAAEAV012@AEBV012@@Z
; public: class Concurrency::details::<0x0ULL> &__ptr64 __cdecl Concurrency::details::<0x0ULL>::operator =(class Concurrency::details::<0x0ULL> const &__ptr64 )__ptr64 
??4?$_SpinWait@$0A@@details@Concurrency@@QEAAAEAV012@AEBV012@@Z
; public: class Concurrency::SchedulerPolicy &__ptr64 __cdecl Concurrency::SchedulerPolicy::operator =(class Concurrency::SchedulerPolicy const &__ptr64 )__ptr64 
??4SchedulerPolicy@Concurrency@@QEAAAEAV01@AEBV01@@Z
; public: class std::__non_rtti_object &__ptr64 __cdecl std::__non_rtti_object::operator =(class std::__non_rtti_object const &__ptr64 )__ptr64 
??4__non_rtti_object@std@@QEAAAEAV01@AEBV01@@Z
; public: class std::bad_cast &__ptr64 __cdecl std::bad_cast::operator =(class std::bad_cast const &__ptr64 )__ptr64 
??4bad_cast@std@@QEAAAEAV01@AEBV01@@Z
; public: class std::bad_typeid &__ptr64 __cdecl std::bad_typeid::operator =(class std::bad_typeid const &__ptr64 )__ptr64 
??4bad_typeid@std@@QEAAAEAV01@AEBV01@@Z
; public: class std::exception &__ptr64 __cdecl std::exception::operator =(class std::exception const &__ptr64 )__ptr64 
??4exception@std@@QEAAAEAV01@AEBV01@@Z
; public: bool __cdecl type_info::operator ==(class type_info const &__ptr64 )const __ptr64 
??8type_info@@QEBA_NAEBV0@@Z
; public: bool __cdecl type_info::operator !=(class type_info const &__ptr64 )const __ptr64 
??9type_info@@QEBA_NAEBV0@@Z
; const std::__non_rtti_object::$vftable
??_7__non_rtti_object@std@@6B@ DATA
; const std::bad_cast::$vftable
??_7bad_cast@std@@6B@ DATA
; const std::bad_typeid::$vftable
??_7bad_typeid@std@@6B@ DATA
; const exception::$vftable
??_7exception@@6B@ DATA
; const std::exception::$vftable
??_7exception@std@@6B@ DATA
; public: void __cdecl Concurrency::details::<0x1ULL>::__dflt_ctor_closure(void)__ptr64 
??_F?$_SpinWait@$00@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::<0x0ULL>::__dflt_ctor_closure(void)__ptr64 
??_F?$_SpinWait@$0A@@details@Concurrency@@QEAAXXZ
; public: void __cdecl std::bad_cast::__dflt_ctor_closure(void)__ptr64 
??_Fbad_cast@std@@QEAAXXZ
; public: void __cdecl std::bad_typeid::__dflt_ctor_closure(void)__ptr64 
??_Fbad_typeid@std@@QEAAXXZ
; void *__ptr64 __cdecl operator new[](unsigned __int64)
??_U@YAPEAX_K@Z
; void *__ptr64 __cdecl operator new[](unsigned __int64,int,char const *__ptr64,int)
??_U@YAPEAX_KHPEBDH@Z
; void __cdecl operator delete[](void *__ptr64)
??_V@YAXPEAX@Z
; void *__ptr64 __cdecl Concurrency::Alloc(unsigned __int64)
?Alloc@Concurrency@@YAPEAX_K@Z
; public: static void __cdecl Concurrency::Context::Block(void)
?Block@Context@Concurrency@@SAXXZ
; public: static void __cdecl Concurrency::CurrentScheduler::Create(class Concurrency::SchedulerPolicy const &__ptr64 )
?Create@CurrentScheduler@Concurrency@@SAXAEBVSchedulerPolicy@2@@Z
; public: static class Concurrency::Scheduler *__ptr64 __cdecl Concurrency::Scheduler::Create(class Concurrency::SchedulerPolicy const &__ptr64 )
?Create@Scheduler@Concurrency@@SAPEAV12@AEBVSchedulerPolicy@2@@Z
; struct Concurrency::IResourceManager *__ptr64 __cdecl Concurrency::CreateResourceManager(void)
?CreateResourceManager@Concurrency@@YAPEAUIResourceManager@1@XZ
; public: static class Concurrency::ScheduleGroup *__ptr64 __cdecl Concurrency::CurrentScheduler::CreateScheduleGroup(void)
?CreateScheduleGroup@CurrentScheduler@Concurrency@@SAPEAVScheduleGroup@2@XZ
; public: static class Concurrency::Context *__ptr64 __cdecl Concurrency::Context::CurrentContext(void)
?CurrentContext@Context@Concurrency@@SAPEAV12@XZ
; public: static void __cdecl Concurrency::CurrentScheduler::Detach(void)
?Detach@CurrentScheduler@Concurrency@@SAXXZ
; long __cdecl Concurrency::DisableTracing(void)
?DisableTracing@Concurrency@@YAJXZ
; long __cdecl Concurrency::EnableTracing(void)
?EnableTracing@Concurrency@@YAJXZ
; void __cdecl Concurrency::Free(void *__ptr64)
?Free@Concurrency@@YAXPEAX@Z
; public: static class Concurrency::Scheduler *__ptr64 __cdecl Concurrency::CurrentScheduler::Get(void)
?Get@CurrentScheduler@Concurrency@@SAPEAVScheduler@2@XZ
; unsigned int __cdecl Concurrency::GetExecutionContextId(void)
?GetExecutionContextId@Concurrency@@YAIXZ
; public: static unsigned int __cdecl Concurrency::CurrentScheduler::GetNumberOfVirtualProcessors(void)
?GetNumberOfVirtualProcessors@CurrentScheduler@Concurrency@@SAIXZ
; enum Concurrency::IResourceManager::OSVersion __cdecl Concurrency::GetOSVersion(void)
?GetOSVersion@Concurrency@@YA?AW4OSVersion@IResourceManager@1@XZ
; public: static class Concurrency::SchedulerPolicy __cdecl Concurrency::CurrentScheduler::GetPolicy(void)
?GetPolicy@CurrentScheduler@Concurrency@@SA?AVSchedulerPolicy@2@XZ
; public: unsigned int __cdecl Concurrency::SchedulerPolicy::GetPolicyValue(enum Concurrency::PolicyElementKey)const __ptr64 
?GetPolicyValue@SchedulerPolicy@Concurrency@@QEBAIW4PolicyElementKey@2@@Z
; unsigned int __cdecl Concurrency::GetProcessorCount(void)
?GetProcessorCount@Concurrency@@YAIXZ
; unsigned int __cdecl Concurrency::GetProcessorNodeCount(void)
?GetProcessorNodeCount@Concurrency@@YAIXZ
; unsigned int __cdecl Concurrency::GetSchedulerId(void)
?GetSchedulerId@Concurrency@@YAIXZ
; void *__ptr64 __cdecl Concurrency::details::GetSharedTimerQueue(void)
?GetSharedTimerQueue@details@Concurrency@@YAPEAXXZ
; public: static unsigned int __cdecl Concurrency::Context::Id(void)
?Id@Context@Concurrency@@SAIXZ
; public: static unsigned int __cdecl Concurrency::CurrentScheduler::Id(void)
?Id@CurrentScheduler@Concurrency@@SAIXZ
; public: static bool __cdecl Concurrency::Context::IsCurrentTaskCollectionCanceling(void)
?IsCurrentTaskCollectionCanceling@Context@Concurrency@@SA_NXZ
; unsigned long __cdecl Concurrency::details::Log2(unsigned __int64)
?Log2@details@Concurrency@@YAK_K@Z
; public: static void __cdecl Concurrency::Context::Oversubscribe(bool)
?Oversubscribe@Context@Concurrency@@SAX_N@Z
; public: static void __cdecl Concurrency::CurrentScheduler::RegisterShutdownEvent(void *__ptr64)
?RegisterShutdownEvent@CurrentScheduler@Concurrency@@SAXPEAX@Z
; public: static void __cdecl Concurrency::Scheduler::ResetDefaultSchedulerPolicy(void)
?ResetDefaultSchedulerPolicy@Scheduler@Concurrency@@SAXXZ
; public: static unsigned int __cdecl Concurrency::Context::ScheduleGroupId(void)
?ScheduleGroupId@Context@Concurrency@@SAIXZ
; public: static void __cdecl Concurrency::CurrentScheduler::ScheduleTask(void(__cdecl *)(void *__ptr64),void *__ptr64)
?ScheduleTask@CurrentScheduler@Concurrency@@SAXP6AXPEAX@Z0@Z
; public: void __cdecl Concurrency::SchedulerPolicy::SetConcurrencyLimits(unsigned int,unsigned int)__ptr64 
?SetConcurrencyLimits@SchedulerPolicy@Concurrency@@QEAAXII@Z
; public: static void __cdecl Concurrency::Scheduler::SetDefaultSchedulerPolicy(class Concurrency::SchedulerPolicy const &__ptr64 )
?SetDefaultSchedulerPolicy@Scheduler@Concurrency@@SAXAEBVSchedulerPolicy@2@@Z
; public: unsigned int __cdecl Concurrency::SchedulerPolicy::SetPolicyValue(enum Concurrency::PolicyElementKey,unsigned int)__ptr64 
?SetPolicyValue@SchedulerPolicy@Concurrency@@QEAAIW4PolicyElementKey@2@I@Z
; public: static unsigned int __cdecl Concurrency::Context::VirtualProcessorId(void)
?VirtualProcessorId@Context@Concurrency@@SAIXZ
; public: static void __cdecl Concurrency::Context::Yield(void)
?Yield@Context@Concurrency@@SAXXZ
; private: void __cdecl Concurrency::details::_StructuredTaskCollection::_Abort(void)__ptr64 
?_Abort@_StructuredTaskCollection@details@Concurrency@@AEAAXXZ
; public: void __cdecl Concurrency::details::_NonReentrantBlockingLock::_Acquire(void)__ptr64 
?_Acquire@_NonReentrantBlockingLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_NonReentrantPPLLock::_Acquire(void *__ptr64)__ptr64 
?_Acquire@_NonReentrantPPLLock@details@Concurrency@@QEAAXPEAX@Z
; public: void __cdecl Concurrency::details::_ReentrantBlockingLock::_Acquire(void)__ptr64 
?_Acquire@_ReentrantBlockingLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReentrantLock::_Acquire(void)__ptr64 
?_Acquire@_ReentrantLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReentrantPPLLock::_Acquire(void *__ptr64)__ptr64 
?_Acquire@_ReentrantPPLLock@details@Concurrency@@QEAAXPEAX@Z
; public: void __cdecl Concurrency::details::_ReaderWriterLock::_AcquireRead(void)__ptr64 
?_AcquireRead@_ReaderWriterLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReaderWriterLock::_AcquireWrite(void)__ptr64 
?_AcquireWrite@_ReaderWriterLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_StructuredTaskCollection::_Cancel(void)__ptr64 
?_Cancel@_StructuredTaskCollection@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_TaskCollection::_Cancel(void)__ptr64 
?_Cancel@_TaskCollection@details@Concurrency@@QEAAXXZ
; protected: void __cdecl Concurrency::details::_UnrealizedChore::_CheckTaskCollection(void)__ptr64 
?_CheckTaskCollection@_UnrealizedChore@details@Concurrency@@IEAAXXZ
; void __cdecl Concurrency::details::_ConcRT_Assert(char const *__ptr64,char const *__ptr64,int)
?_ConcRT_Assert@details@Concurrency@@YAXPEBD0H@Z
; void __cdecl Concurrency::details::_ConcRT_CoreAssert(char const *__ptr64,char const *__ptr64,int)
?_ConcRT_CoreAssert@details@Concurrency@@YAXPEBD0H@Z
; void __cdecl Concurrency::details::_ConcRT_DumpMessage(wchar_t const *__ptr64,...)
?_ConcRT_DumpMessage@details@Concurrency@@YAXPEB_WZZ
; void __cdecl Concurrency::details::_ConcRT_Trace(int,wchar_t const *__ptr64,...)
?_ConcRT_Trace@details@Concurrency@@YAXHPEB_WZZ
; private: void __cdecl std::exception::_Copy_str(char const *__ptr64)__ptr64 
?_Copy_str@exception@std@@AEAAXPEBD@Z
; protected: void __cdecl Concurrency::details::<0x1ULL>::_DoYield(void)__ptr64 
?_DoYield@?$_SpinWait@$00@details@Concurrency@@IEAAXXZ
; protected: void __cdecl Concurrency::details::<0x0ULL>::_DoYield(void)__ptr64 
?_DoYield@?$_SpinWait@$0A@@details@Concurrency@@IEAAXXZ
; public: bool __cdecl Concurrency::details::_StructuredTaskCollection::_IsCanceling(void)__ptr64 
?_IsCanceling@_StructuredTaskCollection@details@Concurrency@@QEAA_NXZ
; public: bool __cdecl Concurrency::details::_TaskCollection::_IsCanceling(void)__ptr64 
?_IsCanceling@_TaskCollection@details@Concurrency@@QEAA_NXZ
; private: static char const *__ptr64 __cdecl type_info::_Name_base(class type_info const *__ptr64,struct __type_info_node *__ptr64)
?_Name_base@type_info@@CAPEBDPEBV1@PEAU__type_info_node@@@Z
; private: static char const *__ptr64 __cdecl type_info::_Name_base_internal(class type_info const *__ptr64,struct __type_info_node *__ptr64)
?_Name_base_internal@type_info@@CAPEBDPEBV1@PEAU__type_info_node@@@Z
; protected: unsigned long __cdecl Concurrency::details::<0x1ULL>::_NumberOfSpins(void)__ptr64 
?_NumberOfSpins@?$_SpinWait@$00@details@Concurrency@@IEAAKXZ
; protected: unsigned long __cdecl Concurrency::details::<0x0ULL>::_NumberOfSpins(void)__ptr64 
?_NumberOfSpins@?$_SpinWait@$0A@@details@Concurrency@@IEAAKXZ
; public: void __cdecl Concurrency::details::_NonReentrantBlockingLock::_Release(void)__ptr64 
?_Release@_NonReentrantBlockingLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_NonReentrantPPLLock::_Release(void)__ptr64 
?_Release@_NonReentrantPPLLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReentrantBlockingLock::_Release(void)__ptr64 
?_Release@_ReentrantBlockingLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReentrantLock::_Release(void)__ptr64 
?_Release@_ReentrantLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReentrantPPLLock::_Release(void)__ptr64 
?_Release@_ReentrantPPLLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReaderWriterLock::_ReleaseRead(void)__ptr64 
?_ReleaseRead@_ReaderWriterLock@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_ReaderWriterLock::_ReleaseWrite(void)__ptr64 
?_ReleaseWrite@_ReaderWriterLock@details@Concurrency@@QEAAXXZ
; protected: void __cdecl Concurrency::details::<0x1ULL>::_Reset(void)__ptr64 
?_Reset@?$_SpinWait@$00@details@Concurrency@@IEAAXXZ
; protected: void __cdecl Concurrency::details::<0x0ULL>::_Reset(void)__ptr64 
?_Reset@?$_SpinWait@$0A@@details@Concurrency@@IEAAXXZ
; public: enum Concurrency::details::_TaskCollectionStatus __cdecl Concurrency::details::_StructuredTaskCollection::_RunAndWait(class Concurrency::details::_UnrealizedChore *__ptr64)__ptr64 
?_RunAndWait@_StructuredTaskCollection@details@Concurrency@@QEAA?AW4_TaskCollectionStatus@23@PEAV_UnrealizedChore@23@@Z
; public: enum Concurrency::details::_TaskCollectionStatus __cdecl Concurrency::details::_TaskCollection::_RunAndWait(class Concurrency::details::_UnrealizedChore *__ptr64)__ptr64 
?_RunAndWait@_TaskCollection@details@Concurrency@@QEAA?AW4_TaskCollectionStatus@23@PEAV_UnrealizedChore@23@@Z
; public: void __cdecl Concurrency::details::_StructuredTaskCollection::_Schedule(class Concurrency::details::_UnrealizedChore *__ptr64)__ptr64 
?_Schedule@_StructuredTaskCollection@details@Concurrency@@QEAAXPEAV_UnrealizedChore@23@@Z
; public: void __cdecl Concurrency::details::_TaskCollection::_Schedule(class Concurrency::details::_UnrealizedChore *__ptr64)__ptr64 
?_Schedule@_TaskCollection@details@Concurrency@@QEAAXPEAV_UnrealizedChore@23@@Z
; public: void __cdecl Concurrency::details::<0x1ULL>::_SetSpinCount(unsigned int)__ptr64 
?_SetSpinCount@?$_SpinWait@$00@details@Concurrency@@QEAAXI@Z
; public: void __cdecl Concurrency::details::<0x0ULL>::_SetSpinCount(unsigned int)__ptr64 
?_SetSpinCount@?$_SpinWait@$0A@@details@Concurrency@@QEAAXI@Z
; protected: bool __cdecl Concurrency::details::<0x1ULL>::_ShouldSpinAgain(void)__ptr64 
?_ShouldSpinAgain@?$_SpinWait@$00@details@Concurrency@@IEAA_NXZ
; protected: bool __cdecl Concurrency::details::<0x0ULL>::_ShouldSpinAgain(void)__ptr64 
?_ShouldSpinAgain@?$_SpinWait@$0A@@details@Concurrency@@IEAA_NXZ
; public: bool __cdecl Concurrency::details::<0x1ULL>::_SpinOnce(void)__ptr64 
?_SpinOnce@?$_SpinWait@$00@details@Concurrency@@QEAA_NXZ
; public: bool __cdecl Concurrency::details::<0x0ULL>::_SpinOnce(void)__ptr64 
?_SpinOnce@?$_SpinWait@$0A@@details@Concurrency@@QEAA_NXZ
; public: static void __cdecl Concurrency::Context::_SpinYield(void)
?_SpinYield@Context@Concurrency@@SAXXZ
; protected: void __cdecl Concurrency::details::_Timer::_Start(void)__ptr64 
?_Start@_Timer@details@Concurrency@@IEAAXXZ
; protected: void __cdecl Concurrency::details::_Timer::_Stop(void)__ptr64 
?_Stop@_Timer@details@Concurrency@@IEAAXXZ
; private: void __cdecl std::exception::_Tidy(void)__ptr64 
?_Tidy@exception@std@@AEAAXXZ
; void __cdecl Concurrency::_Trace_ppl_function(struct _GUID const &__ptr64 ,unsigned char,enum Concurrency::ConcRT_EventType)
?_Trace_ppl_function@Concurrency@@YAXAEBU_GUID@@EW4ConcRT_EventType@1@@Z
; public: bool __cdecl Concurrency::details::_NonReentrantBlockingLock::_TryAcquire(void)__ptr64 
?_TryAcquire@_NonReentrantBlockingLock@details@Concurrency@@QEAA_NXZ
; public: bool __cdecl Concurrency::details::_ReentrantBlockingLock::_TryAcquire(void)__ptr64 
?_TryAcquire@_ReentrantBlockingLock@details@Concurrency@@QEAA_NXZ
; public: bool __cdecl Concurrency::details::_ReentrantLock::_TryAcquire(void)__ptr64 
?_TryAcquire@_ReentrantLock@details@Concurrency@@QEAA_NXZ
; public: bool __cdecl Concurrency::details::_ReaderWriterLock::_TryAcquireWrite(void)__ptr64 
?_TryAcquireWrite@_ReaderWriterLock@details@Concurrency@@QEAA_NXZ
; private: static void __cdecl type_info::_Type_info_dtor(class type_info *__ptr64)
?_Type_info_dtor@type_info@@CAXPEAV1@@Z
; private: static void __cdecl type_info::_Type_info_dtor_internal(class type_info *__ptr64)
?_Type_info_dtor_internal@type_info@@CAXPEAV1@@Z
; void __cdecl Concurrency::details::_UnderlyingYield(void)
?_UnderlyingYield@details@Concurrency@@YAXXZ
; int __cdecl _ValidateExecute(__int64(__cdecl *)(void))
?_ValidateExecute@@YAHP6A_JXZ@Z
; int __cdecl _ValidateRead(void const *__ptr64,unsigned int)
?_ValidateRead@@YAHPEBXI@Z
; int __cdecl _ValidateWrite(void *__ptr64,unsigned int)
?_ValidateWrite@@YAHPEAXI@Z
; public: static unsigned int __cdecl Concurrency::details::_SpinCount::_Value(void)
?_Value@_SpinCount@details@Concurrency@@SAIXZ
; void __cdecl __ExceptionPtrAssign(void *__ptr64,void const *__ptr64)
?__ExceptionPtrAssign@@YAXPEAXPEBX@Z
; bool __cdecl __ExceptionPtrCompare(void const *__ptr64,void const *__ptr64)
?__ExceptionPtrCompare@@YA_NPEBX0@Z
; void __cdecl __ExceptionPtrCopy(void *__ptr64,void const *__ptr64)
?__ExceptionPtrCopy@@YAXPEAXPEBX@Z
; void __cdecl __ExceptionPtrCopyException(void *__ptr64,void const *__ptr64,void const *__ptr64)
?__ExceptionPtrCopyException@@YAXPEAXPEBX1@Z
; void __cdecl __ExceptionPtrCreate(void *__ptr64)
?__ExceptionPtrCreate@@YAXPEAX@Z
; void __cdecl __ExceptionPtrCurrentException(void *__ptr64)
?__ExceptionPtrCurrentException@@YAXPEAX@Z
; void __cdecl __ExceptionPtrDestroy(void *__ptr64)
?__ExceptionPtrDestroy@@YAXPEAX@Z
; void __cdecl __ExceptionPtrRethrow(void const *__ptr64)
?__ExceptionPtrRethrow@@YAXPEBX@Z
__uncaught_exception
; void __cdecl _inconsistency(void)
?_inconsistency@@YAXXZ
; void __cdecl _invalid_parameter(unsigned short const *__ptr64,unsigned short const *__ptr64,unsigned short const *__ptr64,unsigned int,unsigned __int64)
?_invalid_parameter@@YAXPEBG00I_K@Z
; int __cdecl _is_exception_typeof(class type_info const &__ptr64 ,struct _EXCEPTION_POINTERS *__ptr64)
?_is_exception_typeof@@YAHAEBVtype_info@@PEAU_EXCEPTION_POINTERS@@@Z
; public: char const *__ptr64 __cdecl type_info::_name_internal_method(struct __type_info_node *__ptr64)const __ptr64 
?_name_internal_method@type_info@@QEBAPEBDPEAU__type_info_node@@@Z
; int __cdecl _open(char const *__ptr64,int,int)
?_open@@YAHPEBDHH@Z
; int(__cdecl *)(unsigned __int64)__cdecl _query_new_handler(void)
?_query_new_handler@@YAP6AH_K@ZXZ
; int __cdecl _query_new_mode(void)
?_query_new_mode@@YAHXZ
; int(__cdecl *)(unsigned __int64)__cdecl _set_new_handler(int)
?_set_new_handler@@YAP6AH_K@ZH@Z
; int(__cdecl *)(unsigned __int64)__cdecl _set_new_handler(int(__cdecl *)(unsigned __int64))
?_set_new_handler@@YAP6AH_K@ZP6AH0@Z@Z
; int __cdecl _set_new_mode(int)
?_set_new_mode@@YAHH@Z
; void(__cdecl *)(unsigned int,struct _EXCEPTION_POINTERS *__ptr64)__cdecl _set_se_translator(int)
?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZH@Z
; void(__cdecl *)(unsigned int,struct _EXCEPTION_POINTERS *__ptr64)__cdecl _set_se_translator(void(__cdecl *)(unsigned int,struct _EXCEPTION_POINTERS *__ptr64))
?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z
; int __cdecl _sopen(char const *__ptr64,int,int,int)
?_sopen@@YAHPEBDHHH@Z
; public: void __cdecl type_info::_type_info_dtor_internal_method(void)__ptr64 
?_type_info_dtor_internal_method@type_info@@QEAAXXZ
; int __cdecl _wopen(wchar_t const *__ptr64,int,int)
?_wopen@@YAHPEB_WHH@Z
; int __cdecl _wsopen(wchar_t const *__ptr64,int,int,int)
?_wsopen@@YAHPEB_WHHH@Z
; public: int __cdecl type_info::before(class type_info const &__ptr64 )const __ptr64 
?before@type_info@@QEBAHAEBV1@@Z
; public: long __cdecl Concurrency::scheduler_resource_allocation_error::get_error_code(void)const __ptr64 
?get_error_code@scheduler_resource_allocation_error@Concurrency@@QEBAJXZ
; public: void __cdecl Concurrency::critical_section::lock(void)__ptr64 
?lock@critical_section@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::reader_writer_lock::lock(void)__ptr64 
?lock@reader_writer_lock@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::reader_writer_lock::lock_read(void)__ptr64 
?lock_read@reader_writer_lock@Concurrency@@QEAAXXZ
; public: char const *__ptr64 __cdecl type_info::name(struct __type_info_node *__ptr64)const __ptr64 
?name@type_info@@QEBAPEBDPEAU__type_info_node@@@Z
; public: class Concurrency::critical_section &__ptr64 __cdecl Concurrency::critical_section::native_handle(void)__ptr64 
?native_handle@critical_section@Concurrency@@QEAAAEAV12@XZ
; public: char const *__ptr64 __cdecl type_info::raw_name(void)const __ptr64 
?raw_name@type_info@@QEBAPEBDXZ
; public: void __cdecl Concurrency::event::reset(void)__ptr64 
?reset@event@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::event::set(void)__ptr64 
?set@event@Concurrency@@QEAAXXZ
; void(__cdecl *)(void)__cdecl set_new_handler(void(__cdecl *)(void))
?set_new_handler@@YAP6AXXZP6AXXZ@Z
; void(__cdecl *)(void)__cdecl set_terminate(int)
?set_terminate@@YAP6AXXZH@Z
; void(__cdecl *)(void)__cdecl set_terminate(void(__cdecl *)(void))
?set_terminate@@YAP6AXXZP6AXXZ@Z
; void(__cdecl *)(void)__cdecl set_unexpected(int)
?set_unexpected@@YAP6AXXZH@Z
; void(__cdecl *)(void)__cdecl set_unexpected(void(__cdecl *)(void))
?set_unexpected@@YAP6AXXZP6AXXZ@Z
; void __cdecl terminate(void)
?terminate@@YAXXZ
; public: bool __cdecl Concurrency::critical_section::try_lock(void)__ptr64 
?try_lock@critical_section@Concurrency@@QEAA_NXZ
; public: bool __cdecl Concurrency::reader_writer_lock::try_lock(void)__ptr64 
?try_lock@reader_writer_lock@Concurrency@@QEAA_NXZ
; public: bool __cdecl Concurrency::reader_writer_lock::try_lock_read(void)__ptr64 
?try_lock_read@reader_writer_lock@Concurrency@@QEAA_NXZ
; void __cdecl unexpected(void)
?unexpected@@YAXXZ
; public: void __cdecl Concurrency::critical_section::unlock(void)__ptr64 
?unlock@critical_section@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::reader_writer_lock::unlock(void)__ptr64 
?unlock@reader_writer_lock@Concurrency@@QEAAXXZ
; void __cdecl Concurrency::wait(unsigned int)
?wait@Concurrency@@YAXI@Z
; public: unsigned __int64 __cdecl Concurrency::event::wait(unsigned int)__ptr64 
?wait@event@Concurrency@@QEAA_KI@Z
; public: static unsigned __int64 __cdecl Concurrency::event::wait_for_multiple(class Concurrency::event *__ptr64 *__ptr64,unsigned __int64,bool,unsigned int)
?wait_for_multiple@event@Concurrency@@SA_KPEAPEAV12@_K_NI@Z
; public: virtual char const *__ptr64 __cdecl std::exception::what(void)const __ptr64 
?what@exception@std@@UEBAPEBDXZ
_CRT_RTC_INIT
_CRT_RTC_INITW
_CreateFrameInfo
_CxxThrowException
_FindAndUnlinkFrame
_GetImageBase
_GetThrowImageBase
_Getdays
_Getmonths
_Gettnames
_HUGE DATA
_IsExceptionObjectToBeDestroyed
_SetImageBase
_SetThrowImageBase
_Strftime
_XcptFilter
__AdjustPointer
__BuildCatchObject
__BuildCatchObjectHelper
__C_specific_handler
__CppXcptFilter
__CxxCallUnwindDelDtor
__CxxCallUnwindDtor
__CxxCallUnwindStdDelDtor
__CxxCallUnwindVecDtor
__CxxDetectRethrow
__CxxExceptionFilter
__CxxFrameHandler
__CxxFrameHandler2
__CxxFrameHandler3
__CxxQueryExceptionSize
__CxxRegisterExceptionObject
__CxxUnregisterExceptionObject
__DestructExceptionObject
__FrameUnwindFilter
__NLG_Dispatch2
__NLG_Return2
__RTCastToVoid
__RTDynamicCast
__RTtypeid
__STRINGTOLD
__STRINGTOLD_L
__TypeMatch
___lc_codepage_func
___lc_collate_cp_func
___lc_handle_func
___mb_cur_max_func
___mb_cur_max_l_func
___setlc_active_func
___unguarded_readlc_active_add_func
__argc DATA
__argv DATA
__badioinfo DATA
__clean_type_info_names_internal
__create_locale
__crtCompareStringA
__crtCompareStringW
__crtLCMapStringA
__crtLCMapStringW
__crt_debugger_hook
__daylight
__dllonexit
__doserrno
__dstbias
__fls_getvalue
__fls_setvalue
__fpecode
__free_locale
__get_current_locale
__get_flsindex
__get_tlsindex
__getmainargs
__initenv DATA
__iob_func
__isascii
__iscsym
__iscsymf
__iswcsym
__iswcsymf
__lconv DATA
__lconv_init
__mb_cur_max DATA
__p___argc
__p___argv
__p___initenv
__p___mb_cur_max
__p___wargv
__p___winitenv
__p__acmdln
__p__commode
__p__daylight
__p__dstbias
__p__environ
__p__fmode
__p__iob
__p__mbcasemap
__p__mbctype
__p__pctype
__p__pgmptr
__p__pwctype
__p__timezone
__p__tzname
__p__wcmdln
__p__wenviron
__p__wpgmptr
__pctype_func
__pioinfo DATA
__pwctype_func
__pxcptinfoptrs
__report_gsfailure DATA
__set_app_type
__set_flsgetvalue
__setlc_active DATA
__setusermatherr
__strncnt
__swprintf_l
__sys_errlist
__sys_nerr
__threadhandle
__threadid
__timezone
__toascii
__tzname
__unDName
__unDNameEx
__unDNameHelper
__unguarded_readlc_active DATA
__vswprintf_l
__wargv DATA
__wcserror
__wcserror_s
__wcsncnt
__wgetmainargs
__winitenv DATA
_abs64
_access
_access_s
_acmdln DATA
_aligned_free
_aligned_malloc
_aligned_msize
_aligned_offset_malloc
_aligned_offset_realloc
_aligned_offset_recalloc
_aligned_realloc
_aligned_recalloc
_amsg_exit
_assert
_atodbl
_atodbl_l
_atof_l
_atoflt
_atoflt_l
_atoi64
_atoi64_l
_atoi_l
_atol_l
_atoldbl
_atoldbl_l
_beep
_beginthread
_beginthreadex
_byteswap_uint64 DATA
_byteswap_ulong DATA
_byteswap_ushort DATA
_c_exit
_cabs DATA
_callnewh
_calloc_crt
_cexit
_cgets
_cgets_s
_cgetws
_cgetws_s
_chdir
_chdrive
_chgsign
_chgsignf
_chmod
_chsize
_chsize_s
_clearfp
_close
_commit
_commode DATA
_configthreadlocale
_control87
_controlfp
_controlfp_s
_copysign
_copysignf
_cprintf
_cprintf_l
_cprintf_p
_cprintf_p_l
_cprintf_s
_cprintf_s_l
_cputs
_cputws
_creat
_create_locale
_cscanf
_cscanf_l
_cscanf_s
_cscanf_s_l
_ctime32
_ctime32_s
_ctime64
ctime == _ctime64
_ctime64_s
_cwait
_cwprintf
_cwprintf_l
_cwprintf_p
_cwprintf_p_l
_cwprintf_s
_cwprintf_s_l
_cwscanf
_cwscanf_l
_cwscanf_s
_cwscanf_s_l
_difftime32
_difftime64
_dosmaperr
_dstbias DATA
_dup
_dup2
_dupenv_s
_ecvt
_ecvt_s
_encoded_null
_endthread
_endthreadex
_environ DATA
_eof
_errno
_execl
_execle
_execlp
_execlpe
_execv
_execve
_execvp
_execvpe
_exit
_expand
_fclose_nolock
_fcloseall
_fcvt
_fcvt_s
_fdopen
_fflush_nolock
_fgetchar
_fgetwc_nolock
_fgetwchar
_filbuf
_filelength
_filelengthi64
_fileno
_findclose
_findfirst32
_findfirst == _findfirst64i32
_findfirst32i64
_findfirst64
_findfirst64i32
_findnext32
_findnext == _findnext64i32
_findnext32i64
_findnext64
_findnext64i32
_finite
_finitef
_flsbuf
_flushall
_fmode DATA
_fpclass
_fpclassf
_fpieee_flt
_fpreset DATA
_fprintf_l
_fprintf_p
_fprintf_p_l
_fprintf_s_l
_fputchar
_fputwc_nolock
_fputwchar
_fread_nolock
_fread_nolock_s
_free_locale
_freea
_freea_s
_freefls
_fscanf_l
_fscanf_s_l
_fseek_nolock
_fseeki64
_fseeki64_nolock
_fsopen
_fstat32
_fstat == _fstat64i32
_fstati64 == _fstat64
_fstat32i64
_fstat64
_fstat64i32
_ftell_nolock
_ftelli64
_ftelli64_nolock
_ftime32
_ftime32_s
_ftime64
_ftime64_s
_ftime == _ftime64
_fullpath
_futime32
_futime64
_fwprintf_l
_fwprintf_p
_fwprintf_p_l
_fwprintf_s_l
_fwrite_nolock
_fwscanf_l
_fwscanf_s_l
_gcvt
_gcvt_s
_get_current_locale
_get_daylight
_get_doserrno
_get_dstbias
_get_errno DATA
_get_fmode
_get_heap_handle
_get_invalid_parameter_handler
_get_osfhandle
_get_output_format
_get_pgmptr
_get_printf_count_output
_get_purecall_handler
_get_terminate
_get_timezone
_get_tzname
_get_unexpected
_get_wpgmptr
_getc_nolock
_getch
_getch_nolock
_getche
_getche_nolock
_getcwd
_getdcwd
_getdcwd_nolock
_getdiskfree
_getdllprocaddr
_getdrive
_getdrives
_getmaxstdio
_getmbcp
_getpid
_getptd
_getsystime
_getw
_getwch
_getwch_nolock
_getwche
_getwche_nolock
_getws
_getws_s
_gmtime32
_gmtime32_s
_gmtime64
gmtime == _gmtime64
_gmtime64_s
_heapadd
_heapchk
_heapmin
_heapset
_heapused
_heapwalk
_hypot
_hypotf
_i64toa
_i64toa_s
_i64tow
_i64tow_s
_initptd
_initterm
_initterm_e
_invalid_parameter
_invalid_parameter_noinfo
_invalid_parameter_noinfo_noreturn
_invoke_watson
_iob DATA
_isalnum_l
_isalpha_l
_isatty
_iscntrl_l
_isctype
_isctype_l
_isdigit_l
_isgraph_l
_isleadbyte_l
_islower_l
_ismbbalnum
_ismbbalnum_l
_ismbbalpha
_ismbbalpha_l
_ismbbgraph
_ismbbgraph_l
_ismbbkalnum
_ismbbkalnum_l
_ismbbkana
_ismbbkana_l
_ismbbkprint
_ismbbkprint_l
_ismbbkpunct
_ismbbkpunct_l
_ismbblead
_ismbblead_l
_ismbbprint
_ismbbprint_l
_ismbbpunct
_ismbbpunct_l
_ismbbtrail
_ismbbtrail_l
_ismbcalnum
_ismbcalnum_l
_ismbcalpha
_ismbcalpha_l
_ismbcdigit
_ismbcdigit_l
_ismbcgraph
_ismbcgraph_l
_ismbchira
_ismbchira_l
_ismbckata
_ismbckata_l
_ismbcl0
_ismbcl0_l
_ismbcl1
_ismbcl1_l
_ismbcl2
_ismbcl2_l
_ismbclegal
_ismbclegal_l
_ismbclower
_ismbclower_l
_ismbcprint
_ismbcprint_l
_ismbcpunct
_ismbcpunct_l
_ismbcspace
_ismbcspace_l
_ismbcsymbol
_ismbcsymbol_l
_ismbcupper
_ismbcupper_l
_ismbslead
_ismbslead_l
_ismbstrail
_ismbstrail_l
_isnan
_isnanf
_isprint_l
_ispunct_l
_isspace_l
_isupper_l
_iswalnum_l
_iswalpha_l
_iswcntrl_l
_iswcsym_l
_iswcsymf_l
_iswctype_l
_iswdigit_l
_iswgraph_l
_iswlower_l
_iswprint_l
_iswpunct_l
_iswspace_l
_iswupper_l
_iswxdigit_l
_isxdigit_l
_itoa
_itoa_s
_itow
_itow_s
_j0
_j1
_jn
_kbhit
_lfind
_lfind_s
_loaddll
_local_unwind
_localtime32
_localtime32_s
_localtime64
localtime == _localtime64
_localtime64_s
_lock
_lock_file
_locking
_logb
_logbf
_lrotl
_lrotr
_lsearch
_lsearch_s
_lseek
_lseeki64
_ltoa
_ltoa_s
_ltow
_ltow_s
_makepath
_makepath_s
_malloc_crt
_mbbtombc
_mbbtombc_l
_mbbtype
_mbbtype_l
_mbcasemap DATA
_mbccpy
_mbccpy_l
_mbccpy_s
_mbccpy_s_l
_mbcjistojms
_mbcjistojms_l
_mbcjmstojis
_mbcjmstojis_l
_mbclen
_mbclen_l
_mbctohira
_mbctohira_l
_mbctokata
_mbctokata_l
_mbctolower
_mbctolower_l
_mbctombb
_mbctombb_l
_mbctoupper
_mbctoupper_l
_mbctype DATA
_mblen_l
_mbsbtype
_mbsbtype_l
_mbscat_s
_mbscat_s_l
_mbschr
_mbschr_l
_mbscmp
_mbscmp_l
_mbscoll
_mbscoll_l
_mbscpy_s
_mbscpy_s_l
_mbscspn
_mbscspn_l
_mbsdec
_mbsdec_l
_mbsicmp
_mbsicmp_l
_mbsicoll
_mbsicoll_l
_mbsinc
_mbsinc_l
_mbslen
_mbslen_l
_mbslwr
_mbslwr_l
_mbslwr_s
_mbslwr_s_l
_mbsnbcat
_mbsnbcat_l
_mbsnbcat_s
_mbsnbcat_s_l
_mbsnbcmp
_mbsnbcmp_l
_mbsnbcnt
_mbsnbcnt_l
_mbsnbcoll
_mbsnbcoll_l
_mbsnbcpy
_mbsnbcpy_l
_mbsnbcpy_s
_mbsnbcpy_s_l
_mbsnbicmp
_mbsnbicmp_l
_mbsnbicoll
_mbsnbicoll_l
_mbsnbset
_mbsnbset_l
_mbsnbset_s
_mbsnbset_s_l
_mbsncat
_mbsncat_l
_mbsncat_s
_mbsncat_s_l
_mbsnccnt
_mbsnccnt_l
_mbsncmp
_mbsncmp_l
_mbsncoll
_mbsncoll_l
_mbsncpy
_mbsncpy_l
_mbsncpy_s
_mbsncpy_s_l
_mbsnextc
_mbsnextc_l
_mbsnicmp
_mbsnicmp_l
_mbsnicoll
_mbsnicoll_l
_mbsninc
_mbsninc_l
_mbsnlen
_mbsnlen_l
_mbsnset
_mbsnset_l
_mbsnset_s
_mbsnset_s_l
_mbspbrk
_mbspbrk_l
_mbsrchr
_mbsrchr_l
_mbsrev
_mbsrev_l
_mbsset
_mbsset_l
_mbsset_s
_mbsset_s_l
_mbsspn
_mbsspn_l
_mbsspnp
_mbsspnp_l
_mbsstr
_mbsstr_l
_mbstok
_mbstok_l
_mbstok_s
_mbstok_s_l
_mbstowcs_l
_mbstowcs_s_l
_mbstrlen
_mbstrlen_l
_mbstrnlen
_mbstrnlen_l
_mbsupr
_mbsupr_l
_mbsupr_s
_mbsupr_s_l
_mbtowc_l
_memccpy
_memicmp
_memicmp_l
_mkdir
_mkgmtime32
_mkgmtime64
_mkgmtime == _mkgmtime64
_mktemp
_mktemp_s
_mktime32
_mktime64
mktime == _mktime64
_msize
_nextafter
_nextafterf
_onexit
_open
_open_osfhandle
_pclose
_pctype DATA
_pgmptr DATA
_pipe
_popen
_printf_l
_printf_p
_printf_p_l
_printf_s_l
_purecall
_putch
_putch_nolock
_putenv
_putenv_s
_putw
_putwch
_putwch_nolock
_putws
_pwctype DATA
_read
_realloc_crt
_recalloc
_recalloc_crt
_resetstkoflw
_rmdir
_rmtmp
_rotl
_rotl64 DATA
_rotr
_rotr64 DATA
_scalb
_scalbf
_scanf_l
_scanf_s_l
_scprintf
_scprintf_l
_scprintf_p
_scprintf_p_l
_scwprintf
_scwprintf_l
_scwprintf_p
_scwprintf_p_l
_searchenv
_searchenv_s
_set_abort_behavior
_set_controlfp
_set_doserrno
_set_errno DATA
_set_error_mode
_set_fmode
_set_invalid_parameter_handler
_set_malloc_crt_max_wait
_set_output_format
_set_printf_count_output
_set_purecall_handler
_seterrormode
_setjmp
_setjmpex
_setmaxstdio
_setmbcp
_setmode
_setsystime
_sleep
_snprintf
_snprintf_c
_snprintf_c_l
_snprintf_l
_snprintf_s
_snprintf_s_l
_snscanf
_snscanf_l
_snscanf_s
_snscanf_s_l
_snwprintf
_snwprintf_l
_snwprintf_s
_snwprintf_s_l
_snwscanf
_snwscanf_l
_snwscanf_s
_snwscanf_s_l
_sopen
_sopen_s
_spawnl
_spawnle
_spawnlp
_spawnlpe
_spawnv
_spawnve
_spawnvp
_spawnvpe
_splitpath
_splitpath_s
_sprintf_l
_sprintf_p
_sprintf_p_l
_sprintf_s_l
_sscanf_l
_sscanf_s_l
_stat32
_stat == _stat64i32
_stati64 == _stat64
_stat32i64
_stat64
_stat64i32
_statusfp
_strcoll_l
_strdate
_strdate_s
_strdup
_strerror
_strerror_s
_strftime_l
_stricmp
_strcmpi == _stricmp
_stricmp_l
_stricoll
_stricoll_l
_strlwr
strlwr == _strlwr
_strlwr_l
_strlwr_s
_strlwr_s_l
_strncoll
_strncoll_l
_strnicmp
_strnicmp_l
_strnicoll
_strnicoll_l
_strnset
_strnset_s
_strrev
_strset
_strset_s
_strtime
_strtime_s
_strtod_l
_strtoi64
_strtoi64_l
_strtol_l
_strtoui64
_strtoui64_l
_strtoul_l
_strupr
_strupr_l
_strupr_s
_strupr_s_l
_strxfrm_l
_swab
_swprintf
_swprintf_c
_swprintf_c_l
_swprintf_p
_swprintf_p_l
_swprintf_s_l
_swscanf_l
_swscanf_s_l
_sys_errlist DATA
_sys_nerr DATA
_tell
_telli64
_tempnam
_time32
_time64
time == _time64
_tolower
_tolower_l
_toupper
_toupper_l
_towlower_l
_towupper_l
_tzset
_ui64toa
_ui64toa_s
_ui64tow
_ui64tow_s
_ultoa
_ultoa_s
_ultow
_ultow_s
_umask
_umask_s
_ungetc_nolock
_ungetch
_ungetch_nolock
_ungetwc_nolock
_ungetwch
_ungetwch_nolock
_unlink
_unloaddll
_unlock
_unlock_file
_utime32
_utime64
_vcprintf
_vcprintf_l
_vcprintf_p
_vcprintf_p_l
_vcprintf_s
_vcprintf_s_l
_vcwprintf
_vcwprintf_l
_vcwprintf_p
_vcwprintf_p_l
_vcwprintf_s
_vcwprintf_s_l
_vfprintf_l
_vfprintf_p
_vfprintf_p_l
_vfprintf_s_l
_vfwprintf_l
_vfwprintf_p
_vfwprintf_p_l
_vfwprintf_s_l
_vprintf_l
_vprintf_p
_vprintf_p_l
_vprintf_s_l
_vscprintf
_vscprintf_l
_vscprintf_p
_vscprintf_p_l
_vscwprintf
_vscwprintf_l
_vscwprintf_p
_vscwprintf_p_l
_vsnprintf
_vsnprintf_c
_vsnprintf_c_l
_vsnprintf_l
_vsnprintf_s
_vsnprintf_s_l
_vsnwprintf
_vsnwprintf_l
_vsnwprintf_s
_vsnwprintf_s_l
_vsprintf_l
_vsprintf_p
_vsprintf_p_l
_vsprintf_s_l
_vswprintf
_vswprintf_c
_vswprintf_c_l
_vswprintf_l
_vswprintf_p
_vswprintf_p_l
_vswprintf_s_l
_vwprintf_l
_vwprintf_p
_vwprintf_p_l
_vwprintf_s_l
_waccess
_waccess_s
_wasctime
_wasctime_s
_wassert
_wchdir
_wchmod
_wcmdln DATA
_wcreat
_wcscoll_l
_wcsdup
_wcserror
_wcserror_s
_wcsftime_l
_wcsicmp
_wcsicmp_l
_wcsicoll
_wcsicoll_l
_wcslwr
wcslwr == _wcslwr
_wcslwr_l
_wcslwr_s
_wcslwr_s_l
_wcsncoll
_wcsncoll_l
_wcsnicmp
_wcsnicmp_l
_wcsnicoll
_wcsnicoll_l
_wcsnset
_wcsnset_s
_wcsrev
_wcsset
_wcsset_s
_wcstod_l
_wcstoi64
_wcstoi64_l
_wcstol_l
_wcstombs_l
_wcstombs_s_l
_wcstoui64
_wcstoui64_l
_wcstoul_l
_wcsupr
_wcsupr_l
_wcsupr_s
_wcsupr_s_l
_wcsxfrm_l
_wctime32
_wctime32_s
_wctime64
_wctime == _wctime64
_wctime64_s
_wctomb_l
_wctomb_s_l
_wctype DATA
_wdupenv_s
_wenviron DATA
_wexecl
_wexecle
_wexeclp
_wexeclpe
_wexecv
_wexecve
_wexecvp
_wexecvpe
_wfdopen
_wfindfirst32
_wfindfirst == _wfindfirst64i32
_wfindfirst32i64
_wfindfirst64
_wfindfirst64i32
_wfindnext32
_wfindnext == _wfindnext64i32
_wfindnext32i64
_wfindnext64
_wfindnext64i32
_wfopen
_wfopen_s
_wfreopen
_wfreopen_s
_wfsopen
_wfullpath
_wgetcwd
_wgetdcwd
_wgetdcwd_nolock
_wgetenv
_wgetenv_s
_wmakepath
_wmakepath_s
_wmkdir
_wmktemp
_wmktemp_s
_wopen
_wperror
_wpgmptr DATA
_wpopen
_wprintf_l
_wprintf_p
_wprintf_p_l
_wprintf_s_l
_wputenv
_wputenv_s
_wremove
_wrename
_write
_wrmdir
_wscanf_l
_wscanf_s_l
_wsearchenv
_wsearchenv_s
_wsetlocale
_wsopen
_wsopen_s
_wspawnl
_wspawnle
_wspawnlp
_wspawnlpe
_wspawnv
_wspawnve
_wspawnvp
_wspawnvpe
_wsplitpath
_wsplitpath_s
_wstat32
_wstat == _wstat64i32
_wstati64 == _wstat64
_wstat32i64
_wstat64
_wstat64i32
_wstrdate
_wstrdate_s
_wstrtime
_wstrtime_s
_wsystem
_wtempnam
_wtmpnam
_wtmpnam_s
_wtof
_wtof_l
_wtoi
_wtoi64
_wtoi64_l
_wtoi_l
_wtol
_wtol_l
_wunlink
_wutime32
_wutime64
_y0
_y1
_yn
abort
abs
acos
acosf DATA
asctime
asctime_s
asin
asinf DATA
atan
atan2 DATA
atan2f DATA
atanf DATA
atexit DATA
atof
atoi
atol
bsearch
bsearch_s
btowc DATA
calloc
ceil DATA
ceilf DATA
clearerr
clearerr_s
clock
cos DATA
cosf DATA
cosh
coshf DATA
div
exit
exp DATA
expf DATA
fabs DATA
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
fgetwc
fgetws
floor DATA
floorf DATA
fmod DATA
fmodf DATA
fopen
fopen_s
fprintf
__ms_fprintf == fprintf
fprintf_s
fputc
fputs
fputwc
fputws
fread
fread_s
free
freopen
freopen_s
frexp DATA
fscanf
__ms_fscanf == fscanf
fscanf_s
fseek
fsetpos
ftell
fwprintf
__ms_fwprintf == fwprintf
fwprintf_s
fwrite
fwscanf
__ms_fwscanf == fwscanf
fwscanf_s
getc
getchar
getenv
getenv_s
gets
gets_s
getwc
getwchar
is_wctype
isalnum
isalpha
iscntrl
isdigit
isgraph
isleadbyte
islower
isprint
ispunct
isspace
isupper
iswalnum
iswalpha
iswascii
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
isxdigit
labs
ldexp DATA
ldiv
llabs DATA
lldiv DATA
localeconv
log DATA
log10
log10f DATA
logf DATA
malloc
mblen
mbrlen DATA
mbrtowc DATA
mbsrtowcs DATA
mbsrtowcs_s
mbstowcs
mbstowcs_s
mbtowc
memchr
memcmp
memcpy
memcpy_s
memmove
memmove_s
memset
modf DATA
modff DATA
perror
pow DATA
powf DATA
printf
__ms_printf == printf
printf_s
putc
putchar
puts
putwc
putwchar
qsort
qsort_s
raise
rand
rand_s
realloc
remove
rename
rewind
scanf
__ms_scanf == scanf
scanf_s
setbuf
setjmp
setlocale
setvbuf
signal
sin DATA
sinf DATA
sinh
sinhf DATA
sprintf
__ms_sprintf == sprintf
sprintf_s
sqrt DATA
sqrtf DATA
srand
sscanf
__ms_sscanf == sscanf
sscanf_s
strcat
strcat_s
strchr
strcmp
strcoll
strcpy
strcpy_s
strcspn
strerror
strerror_s
strftime
strlen
strncat
strncat_s
strncmp
strncpy
strncpy_s
strnlen DATA
strpbrk
strrchr
strspn
strstr
strtod
strtok
strtok_s
strtol
strtoul
strxfrm
swprintf_s
swscanf
__ms_swscanf == swscanf
swscanf_s
system
tan
tanf DATA
tanh
tanhf DATA
tmpfile
tmpfile_s
tmpnam
tmpnam_s
tolower
toupper
towlower
towupper
ungetc
ungetwc
vfprintf
__ms_vfprintf == vfprintf
vfprintf_s
vfwprintf
__ms_vfwprintf == vfwprintf
vfwprintf_s
vprintf
__ms_vprintf == vprintf
vprintf_s
vsprintf
__ms_vsprintf == vsprintf
vsprintf_s
vswprintf_s
vwprintf
__ms_vwprintf == vwprintf
vwprintf_s
wcrtomb DATA
wcrtomb_s
wcscat
wcscat_s
wcschr
wcscmp
wcscoll
wcscpy
wcscpy_s
wcscspn
wcsftime
wcslen
wcsncat
wcsncat_s
wcsncmp
wcsncpy
wcsncpy_s
wcsnlen DATA
wcspbrk
wcsrchr
wcsrtombs DATA
wcsrtombs_s
wcsspn
wcsstr
wcstod
wcstok
wcstok_s
wcstol
wcstombs
wcstombs_s
wcstoul
wcsxfrm
wctob DATA
wctomb
wctomb_s
wmemcpy_s
wmemmove_s
wprintf
__ms_wprintf == wprintf
wprintf_s
wscanf
__ms_wscanf == wscanf
wscanf_s
