;
; Definition file of MSVCR120D.dll
; Automatic generated by gendef
; written by Kai Tietz 2008
;
LIBRARY "MSVCR120D.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::_Cancellation_beacon::_Cancellation_beacon(void)__ptr64 
??0_Cancellation_beacon@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_Condition_variable::_Condition_variable(void)__ptr64 
??0_Condition_variable@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_Context::_Context(class Concurrency::Context *__ptr64)__ptr64 
??0_Context@details@Concurrency@@QEAA@PEAVContext@2@@Z
; public: __cdecl Concurrency::details::_Interruption_exception::_Interruption_exception(char const *__ptr64)__ptr64 
??0_Interruption_exception@details@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::details::_Interruption_exception::_Interruption_exception(void)__ptr64 
??0_Interruption_exception@details@Concurrency@@QEAA@XZ
; 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::_Scheduler::_Scheduler(class Concurrency::Scheduler *__ptr64)__ptr64 
??0_Scheduler@details@Concurrency@@QEAA@PEAVScheduler@2@@Z
; 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::_StructuredTaskCollection::_StructuredTaskCollection(class Concurrency::details::_CancellationTokenState *__ptr64)__ptr64 
??0_StructuredTaskCollection@details@Concurrency@@QEAA@PEAV_CancellationTokenState@12@@Z
; public: __cdecl Concurrency::details::_TaskCollection::_TaskCollection(class Concurrency::details::_CancellationTokenState *__ptr64)__ptr64 
??0_TaskCollection@details@Concurrency@@QEAA@PEAV_CancellationTokenState@12@@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::scheduler_worker_creation_error::scheduler_worker_creation_error(long)__ptr64 
??0scheduler_worker_creation_error@Concurrency@@QEAA@J@Z
; public: __cdecl Concurrency::scheduler_worker_creation_error::scheduler_worker_creation_error(char const *__ptr64,long)__ptr64 
??0scheduler_worker_creation_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::task_canceled::task_canceled(char const *__ptr64)__ptr64 
??0task_canceled@Concurrency@@QEAA@PEBD@Z
; public: __cdecl Concurrency::task_canceled::task_canceled(void)__ptr64 
??0task_canceled@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::_Cancellation_beacon::~_Cancellation_beacon(void)__ptr64 
??1_Cancellation_beacon@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_Condition_variable::~_Condition_variable(void)__ptr64 
??1_Condition_variable@details@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::_StructuredTaskCollection::~_StructuredTaskCollection(void)__ptr64 
??1_StructuredTaskCollection@details@Concurrency@@QEAA@XZ
; public: __cdecl Concurrency::details::_TaskCollection::~_TaskCollection(void)__ptr64 
??1_TaskCollection@details@Concurrency@@QEAA@XZ
; protected: virtual __cdecl Concurrency::details::_Timer::~_Timer(void)__ptr64 
??1_Timer@details@Concurrency@@MEAA@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
; void __cdecl operator delete(void *__ptr64,int,char const *__ptr64,int)
??3@YAXPEAXHPEBDH@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 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 Concurrency::details::_Context::__dflt_ctor_closure(void)__ptr64 
??_F_Context@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_Scheduler::__dflt_ctor_closure(void)__ptr64 
??_F_Scheduler@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 __cdecl operator delete[](void *__ptr64,int,char const *__ptr64,int)
??_V@YAXPEAXHPEBDH@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
; unsigned __int64 __cdecl Concurrency::details::platform::CaptureCallstack(void *__ptr64 *__ptr64,unsigned __int64,unsigned __int64)
?CaptureCallstack@platform@details@Concurrency@@YA_KPEAPEAX_K1@Z
; 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(class Concurrency::location &__ptr64 )
?CreateScheduleGroup@CurrentScheduler@Concurrency@@SAPEAVScheduleGroup@2@AEAVlocation@2@@Z
; 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
; long __cdecl Concurrency::details::platform::GetCurrentThreadId(void)
?GetCurrentThreadId@platform@details@Concurrency@@YAJXZ
; 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::CurrentScheduler::IsAvailableLocation(class Concurrency::location const &__ptr64 )
?IsAvailableLocation@CurrentScheduler@Concurrency@@SA_NAEBVlocation@2@@Z
; 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: static void __cdecl Concurrency::CurrentScheduler::ScheduleTask(void(__cdecl *)(void *__ptr64),void *__ptr64,class Concurrency::location &__ptr64 )
?ScheduleTask@CurrentScheduler@Concurrency@@SAXP6AXPEAX@Z0AEAVlocation@2@@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
; private: void __cdecl Concurrency::details::_StructuredTaskCollection::_CleanupToken(void)__ptr64 
?_CleanupToken@_StructuredTaskCollection@details@Concurrency@@AEAAXXZ
; void __cdecl Concurrency::details::_ConcRT_CoreAssert(char const *__ptr64,char const *__ptr64,int)
?_ConcRT_CoreAssert@details@Concurrency@@YAXPEBD0H@Z
; void __cdecl Concurrency::details::_ConcRT_Trace(int,wchar_t const *__ptr64,...)
?_ConcRT_Trace@details@Concurrency@@YAXHPEB_WZZ
; public: bool __cdecl Concurrency::details::_Cancellation_beacon::_Confirm_cancel(void)__ptr64 
?_Confirm_cancel@_Cancellation_beacon@details@Concurrency@@QEAA_NXZ
; private: void __cdecl std::exception::_Copy_str(char const *__ptr64)__ptr64 
?_Copy_str@exception@std@@AEAAXPEBD@Z
; int __cdecl _CrtDbgReportW(int,unsigned short const *__ptr64,int,unsigned short const *__ptr64,unsigned short const *__ptr64,...)
?_CrtDbgReportW@@YAHHPEBGH00ZZ
; public: static class Concurrency::details::_Context __cdecl Concurrency::details::_Context::_CurrentContext(void)
?_CurrentContext@_Context@details@Concurrency@@SA?AV123@XZ
; public: static class Concurrency::location __cdecl Concurrency::location::_Current_node(void)
?_Current_node@location@Concurrency@@SA?AV12@XZ
; private: virtual void __cdecl Concurrency::details::_AsyncTaskCollection::_Destroy(void)__ptr64 
?_Destroy@_AsyncTaskCollection@details@Concurrency@@EEAAXXZ
; 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: static class Concurrency::details::_Scheduler __cdecl Concurrency::details::_CurrentScheduler::_Get(void)
?_Get@_CurrentScheduler@details@Concurrency@@SA?AV_Scheduler@23@XZ
; struct Concurrency::details::_CONCRT_TRACE_INFO const *__ptr64 __cdecl Concurrency::_GetConcRTTraceInfo(void)
?_GetConcRTTraceInfo@Concurrency@@YAPEBU_CONCRT_TRACE_INFO@details@1@XZ
; unsigned int __cdecl Concurrency::details::_GetConcurrency(void)
?_GetConcurrency@details@Concurrency@@YAIXZ
; private: static unsigned __int64 &__ptr64 __cdecl Concurrency::details::_StackGuard::_GetCurrentInlineDepth(void)
?_GetCurrentInlineDepth@_StackGuard@details@Concurrency@@CAAEA_KXZ
; public: static unsigned int __cdecl Concurrency::details::_CurrentScheduler::_GetNumberOfVirtualProcessors(void)
?_GetNumberOfVirtualProcessors@_CurrentScheduler@details@Concurrency@@SAIXZ
; public: class Concurrency::Scheduler *__ptr64 __cdecl Concurrency::details::_Scheduler::_GetScheduler(void)__ptr64 
?_GetScheduler@_Scheduler@details@Concurrency@@QEAAPEAVScheduler@3@XZ
; public: static unsigned int __cdecl Concurrency::details::_CurrentScheduler::_Id(void)
?_Id@_CurrentScheduler@details@Concurrency@@SAIXZ
; 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
; public: bool __cdecl Concurrency::details::_Context::_IsSynchronouslyBlocked(void)const __ptr64 
?_IsSynchronouslyBlocked@_Context@details@Concurrency@@QEBA_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
; public: static class Concurrency::details::_AsyncTaskCollection *__ptr64 __cdecl Concurrency::details::_AsyncTaskCollection::_NewCollection(class Concurrency::details::_CancellationTokenState *__ptr64)
?_NewCollection@_AsyncTaskCollection@details@Concurrency@@SAPEAV123@PEAV_CancellationTokenState@23@@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: static void __cdecl Concurrency::details::_Context::_Oversubscribe(bool)
?_Oversubscribe@_Context@details@Concurrency@@SAX_N@Z
; public: unsigned int __cdecl Concurrency::details::_Scheduler::_Reference(void)__ptr64 
?_Reference@_Scheduler@details@Concurrency@@QEAAIXZ
; 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: unsigned int __cdecl Concurrency::details::_Scheduler::_Release(void)__ptr64 
?_Release@_Scheduler@details@Concurrency@@QEAAIXZ
; 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
; void __cdecl Concurrency::details::_ReportUnobservedException(void)
?_ReportUnobservedException@details@Concurrency@@YAXXZ
; 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::_StructuredTaskCollection::_Schedule(class Concurrency::details::_UnrealizedChore *__ptr64,class Concurrency::location *__ptr64)__ptr64 
?_Schedule@_StructuredTaskCollection@details@Concurrency@@QEAAXPEAV_UnrealizedChore@23@PEAVlocation@3@@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::_TaskCollection::_Schedule(class Concurrency::details::_UnrealizedChore *__ptr64,class Concurrency::location *__ptr64)__ptr64 
?_Schedule@_TaskCollection@details@Concurrency@@QEAAXPEAV_UnrealizedChore@23@PEAVlocation@3@@Z
; public: static void __cdecl Concurrency::details::_CurrentScheduler::_ScheduleTask(void(__cdecl *)(void *__ptr64),void *__ptr64)
?_ScheduleTask@_CurrentScheduler@details@Concurrency@@SAXP6AXPEAX@Z0@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
; void __cdecl Concurrency::details::_SetUnobservedExceptionHandler(void(__cdecl *)(void))
?_SetUnobservedExceptionHandler@details@Concurrency@@YAXP6AXXZ@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_agents(enum Concurrency::Agents_EventType,__int64,...)
?_Trace_agents@Concurrency@@YAXW4Agents_EventType@1@_JZZ
; 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
; public: static void __cdecl Concurrency::details::_Context::_Yield(void)
?_Yield@_Context@details@Concurrency@@SAXXZ
; 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
; void __cdecl __ExceptionPtrSwap(void *__ptr64,void *__ptr64)
?__ExceptionPtrSwap@@YAXPEAX0@Z
; bool __cdecl __ExceptionPtrToBool(void const *__ptr64)
?__ExceptionPtrToBool@@YA_NPEBX@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: bool __cdecl type_info::before(class type_info const &__ptr64 )const __ptr64 
?before@type_info@@QEBA_NAEBV1@@Z
; public: static class Concurrency::location __cdecl Concurrency::location::current(void)
?current@location@Concurrency@@SA?AV12@XZ
; public: static class Concurrency::location __cdecl Concurrency::location::from_numa_node(unsigned short)
?from_numa_node@location@Concurrency@@SA?AV12@G@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: void __cdecl Concurrency::details::_Condition_variable::notify_all(void)__ptr64 
?notify_all@_Condition_variable@details@Concurrency@@QEAAXXZ
; public: void __cdecl Concurrency::details::_Condition_variable::notify_one(void)__ptr64 
?notify_one@_Condition_variable@details@Concurrency@@QEAAXXZ
; 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 Concurrency::set_task_execution_resources(unsigned short,struct _GROUP_AFFINITY *__ptr64)
?set_task_execution_resources@Concurrency@@YAXGPEAU_GROUP_AFFINITY@@@Z
; void __cdecl Concurrency::set_task_execution_resources(unsigned __int64)
?set_task_execution_resources@Concurrency@@YAX_K@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::critical_section::try_lock_for(unsigned int)__ptr64 
?try_lock_for@critical_section@Concurrency@@QEAA_NI@Z
; 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: void __cdecl Concurrency::details::_Condition_variable::wait(class Concurrency::critical_section &__ptr64 )__ptr64 
?wait@_Condition_variable@details@Concurrency@@QEAAXAEAVcritical_section@3@@Z
; public: unsigned __int64 __cdecl Concurrency::event::wait(unsigned int)__ptr64 
?wait@event@Concurrency@@QEAA_KI@Z
; public: bool __cdecl Concurrency::details::_Condition_variable::wait_for(class Concurrency::critical_section &__ptr64 ,unsigned int)__ptr64 
?wait_for@_Condition_variable@details@Concurrency@@QEAA_NAEAVcritical_section@3@I@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
_Cbuild
_CreateFrameInfo
_CrtCheckMemory
_CrtDbgBreak
_CrtDbgReport
_CrtDbgReportW
_CrtDoForAllClientObjects
_CrtDumpMemoryLeaks
_CrtGetAllocHook
_CrtGetCheckCount
_CrtGetDumpClient
_CrtGetReportHook
_CrtIsMemoryBlock
_CrtIsValidHeapPointer
_CrtIsValidPointer
_CrtMemCheckpoint
_CrtMemDifference
_CrtMemDumpAllObjectsSince
_CrtMemDumpStatistics
_CrtReportBlockType
_CrtSetAllocHook
_CrtSetBreakAlloc
_CrtSetCheckCount
_CrtSetDbgBlockType
_CrtSetDbgFlag
_CrtSetDebugFillThreshold
_CrtSetDumpClient
_CrtSetReportFile
_CrtSetReportHook
_CrtSetReportHook2
_CrtSetReportHookW2
_CrtSetReportMode
_CxxThrowException
_FCbuild
_FindAndUnlinkFrame
_GetImageBase
_GetThrowImageBase
_Getdays
_Getmonths
_Gettnames
_HUGE DATA
_IsExceptionObjectToBeDestroyed
_LCbuild
_SetImageBase
_SetThrowImageBase
_SetWinRTOutOfMemoryExceptionCallback
_Strftime
_VCrtDbgReportA
_VCrtDbgReportW
_W_Getdays
_W_Getmonths
_W_Gettnames
_Wcsftime
_XcptFilter
__AdjustPointer
__BuildCatchObject
__BuildCatchObjectHelper
__C_specific_handler
__CppXcptFilter
__CxxDetectRethrow
__CxxExceptionFilter
__CxxFrameHandler
__CxxFrameHandler2
__CxxFrameHandler3
__CxxQueryExceptionSize
__CxxRegisterExceptionObject
__CxxUnregisterExceptionObject
__DestructExceptionObject
__FrameUnwindFilter
__GetPlatformExceptionInfo
__NLG_Dispatch2
__NLG_Return2
__RTCastToVoid
__RTDynamicCast
__RTtypeid
__STRINGTOLD
__STRINGTOLD_L
__TypeMatch
___lc_codepage_func
___lc_collate_cp_func
___lc_locale_name_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
__crtCaptureCurrentContext
__crtCapturePreviousContext
__crtCompareStringA
__crtCompareStringEx
__crtCompareStringW
__crtCreateEventExW
__crtCreateSemaphoreExW
__crtCreateSymbolicLinkW
__crtEnumSystemLocalesEx
__crtFlsAlloc
__crtFlsFree
__crtFlsGetValue
__crtFlsSetValue
__crtGetDateFormatEx
__crtGetFileInformationByHandleEx
__crtGetLocaleInfoEx
__crtGetShowWindowMode
__crtGetTickCount64
__crtGetTimeFormatEx
__crtGetUserDefaultLocaleName
__crtInitializeCriticalSectionEx
__crtIsPackagedApp
__crtIsValidLocaleName
__crtLCMapStringA
__crtLCMapStringEx
__crtLCMapStringW
__crtSetFileInformationByHandle
__crtSetThreadStackGuarantee
__crtSetUnhandledExceptionFilter
__crtSleep
__crtTerminateProcess
__crtUnhandledException
__crt_debugger_hook
__daylight
__dllonexit
__doserrno
__dstbias
__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__crtAssertBusy
__p__crtBreakAlloc
__p__crtDbgFlag
__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
__set_app_type
__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_free_dbg
_aligned_malloc
_aligned_malloc_dbg
_aligned_msize
_aligned_msize_dbg
_aligned_offset_malloc
_aligned_offset_malloc_dbg
_aligned_offset_realloc
_aligned_offset_realloc_dbg
_aligned_offset_recalloc
_aligned_offset_recalloc_dbg
_aligned_realloc
_aligned_realloc_dbg
_aligned_recalloc
_aligned_recalloc_dbg
_amsg_exit
_assert
_atodbl
_atodbl_l
_atof_l
_atoflt
_atoflt_l
_atoi64
_atoi64_l
_atoi_l
_atol_l
_atoldbl
_atoldbl_l
_atoll_l
_beep
_beginthread
_beginthreadex
_byteswap_uint64
_byteswap_ulong
_byteswap_ushort
_c_exit
_cabs
_callnewh
_calloc_dbg
_cexit
_cgets
_cgets_s
_cgetws
_cgetws_s
_chdir
_chdrive
_chgsign
_chgsignf
_chmod
_chsize
_chsize_s
_chvalidator
_chvalidator_l
_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
_crtAssertBusy DATA
_crtBreakAlloc DATA
_crtDbgFlag DATA
_cscanf
_cscanf_l
_cscanf_s
_cscanf_s_l
_ctime32
_ctime32_s
_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
_dclass
_difftime32
_difftime64
_dosmaperr
_dpcomp
_dsign
_dstbias DATA
_dtest
_dup
_dup2
_dupenv_s
_dupenv_s_dbg
_ecvt
_ecvt_s
_endthread
_endthreadex
_environ DATA
_eof
_errno
_execl
_execle
_execlp
_execlpe
_execv
_execve
_execvp
_execvpe
_exit
_expand
_expand_dbg
_fclose_nolock
_fcloseall
_fcvt
_fcvt_s
_fdclass
_fdopen
_fdpcomp
_fdsign
_fdtest
_fflush_nolock
_fgetchar
_fgetwc_nolock
_fgetwchar
_filbuf
_filelength
_filelengthi64
_fileno
_findclose
_findfirst32
_findfirst32i64
_findfirst64
_findfirst == _findfirst64
_findfirst64i32
_findnext32
_findnext32i64
_findnext64
_findnext == _findnext64
_findnext64i32
_finite
_finitef
_flsbuf
_flushall
_fmode DATA
_fpclass
_fpclassf
_fpieee_flt
_fpreset
_fprintf_l
_fprintf_p
_fprintf_p_l
_fprintf_s_l
_fputchar
_fputwc_nolock
_fputwchar
_fread_nolock
_fread_nolock_s
_free_base
_free_dbg
_free_locale
_freea
_freea_s
_freefls
_fscanf_l
_fscanf_s_l
_fseek_nolock
_fseeki64
_fseeki64_nolock
_fsopen
_fstat32
_fstat32i64
_fstat64
_fstat64i32
_fstat == _fstat64i32
_fstati64 == _fstat64
_ftell_nolock
_ftelli64
_ftelli64_nolock
_ftime32
_ftime32_s
_ftime64
_ftime64_s
_ftime == _ftime64
_fullpath
_fullpath_dbg
_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
_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
_getcwd_dbg
_getdcwd
_getdcwd_dbg
_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
_invoke_watson
_iob DATA
_isalnum_l
_isalpha_l
_isatty
_isblank_l
_iscntrl_l
_isctype
_isctype_l
_isdigit_l
_isgraph_l
_isleadbyte_l
_islower_l
_ismbbalnum
_ismbbalnum_l
_ismbbalpha
_ismbbalpha_l
_ismbbblank
_ismbbblank_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
_ismbcblank
_ismbcblank_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
_iswblank_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
_ldclass
_ldpcomp
_ldsign
_ldtest
_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_base
_malloc_dbg
_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
_mktemp
_mktemp_s
_mktime32
_mktime64
_msize
_msize_dbg
_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_dbg
_recalloc
_recalloc_dbg
_resetstkoflw
_rmdir
_rmtmp
_rotl
_rotl64
_rotr
_rotr64
_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_FMA3_enable
_set_abort_behavior
_set_controlfp
_set_doserrno
_set_errno
_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
_stat32i64
_stat64
_stat64i32
_stat == _stat64i32
_stati64 == _stat64
_statusfp
_strcoll_l
_strdate
_strdate_s
_strdup
_strdup_dbg
_strerror
_strerror_s
_strftime_l
_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
_strtof_l
_strtoi64
_strtoi64_l
_strtoimax_l
_strtol_l
_strtold_l
_strtoll_l
_strtoui64
_strtoui64_l
_strtoul_l
_strtoull_l
_strtoumax_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
_tempnam_dbg
_time32
_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
_vacopy
_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
snwprintf == _snwprintf
vsnwprintf == _vsnwprintf
_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
_wcreate_locale
_wcscoll_l
_wcsdup
_wcsdup_dbg
_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
_wcstof_l
_wcstoi64
_wcstoi64_l
_wcstoimax_l
_wcstol_l
_wcstold_l
_wcstoll_l
_wcstombs_l
_wcstombs_s_l
_wcstoui64
_wcstoui64_l
_wcstoul_l
_wcstoull_l
_wcstoumax_l
_wcsupr
_wcsupr_l
_wcsupr_s
_wcsupr_s_l
_wcsxfrm_l
_wctime32
_wctime32_s
_wctime64
_wctime64_s
_wctomb_l
_wctomb_s_l
_wctype DATA
_wdupenv_s
_wdupenv_s_dbg
_wenviron DATA
_wexecl
_wexecle
_wexeclp
_wexeclpe
_wexecv
_wexecve
_wexecvp
_wexecvpe
_wfdopen
_wfindfirst32
_wfindfirst32i64
_wfindfirst64
_wfindfirst64i32
_wfindfirst == _wfindfirst64i32
_wfindnext32
_wfindnext32i64
_wfindnext64
_wfindnext64i32
_wfindnext == _wfindnext64i32
_wfopen
_wfopen_s
_wfreopen
_wfreopen_s
_wfsopen
_wfullpath
_wfullpath_dbg
_wgetcwd
_wgetcwd_dbg
_wgetdcwd
_wgetdcwd_dbg
_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
_wstat32i64
_wstat64
_wstat64i32
_wstat == _wstat64i32
_wstati64 == _wstat64
_wstrdate
_wstrdate_s
_wstrtime
_wstrtime_s
_wsystem
_wtempnam
_wtempnam_dbg
_wtmpnam
_wtmpnam_s
_wtof
_wtof_l
_wtoi
_wtoi64
_wtoi64_l
_wtoi_l
_wtol
_wtol_l
_wtoll
_wtoll_l
_wunlink
_wutime32
_wutime64
_y0
_y1
_yn
abort
abs
acos
acosf
acosh
acoshf
acoshl
asctime
asctime_s
asin
asinf
asinh
asinhf
asinhl
atan
atan2
atan2f
atanf
atanh
atanhf
atanhl
atexit
atof
atoi
atol
atoll
bsearch
bsearch_s
btowc
cabs
cabsf
cabsl
cacos
cacosf
cacosh
cacoshf
cacoshl
cacosl
calloc
carg
cargf
cargl
casin
casinf
casinh
casinhf
casinhl
casinl
catan
catanf
catanh
catanhf
catanhl
catanl
cbrt
cbrtf
cbrtl
ccos
ccosf
ccosh
ccoshf
ccoshl
ccosl
ceil
ceilf
cexp
cexpf
cexpl
cimag
cimagf
cimagl
clearerr
clearerr_s
clock
clog
clog10
clog10f
clog10l
clogf
clogl
conj
conjf
conjl
copysign
copysignf
copysignl
cos
cosf
cosh
coshf
cpow
cpowf
cpowl
cproj
cprojf
cprojl
creal
crealf
creall
csin
csinf
csinh
csinhf
csinhl
csinl
csqrt
csqrtf
csqrtl
ctan
ctanf
ctanh
ctanhf
ctanhl
ctanl
div
erf
erfc
erfcf
erfcl
erff
erfl
exit
exp
exp2
exp2f
exp2l
expf
expm1
expm1f
expm1l
fabs
fclose
fdim
fdimf
fdiml
feclearexcept
fegetenv
fegetexceptflag
fegetround
feholdexcept
feof
feraiseexcept
ferror
fesetenv
fesetexceptflag
fesetround
fetestexcept
feupdateenv
fflush
fgetc
fgetpos
fgets
fgetwc
fgetws
floor
floorf
fma
fmaf
fmal
fmax
fmaxf
fmaxl
fmin
fminf
fminl
fmod
fmodf
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
ilogb
ilogbf
ilogbl
imaxabs
imaxdiv
is_wctype
isalnum
isalpha
isblank
iscntrl
isdigit
isgraph
isleadbyte
islower
isprint
ispunct
isspace
isupper
iswalnum
iswalpha
iswascii
iswblank
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
isxdigit
labs
ldexp
ldiv
lgamma
lgammaf
lgammal
llabs
lldiv
llrint
llrintf
llrintl
llround
llroundf
llroundl
localeconv
log
log10
log10f
log1p
log1pf
log1pl
log2
log2f
log2l
logb
logbf
logbl
logf
lrint
lrintf
lrintl
lround
lroundf
lroundl
malloc
mblen
mbrlen
mbrtowc
mbsrtowcs
mbsrtowcs_s
mbstowcs
mbstowcs_s
mbtowc
memchr
memcmp
memcpy
memcpy_s
memmove
memmove_s
memset
modf
modff
nan
nanf
nanl
nearbyint
nearbyintf
nearbyintl
nextafterf
nextafterl
nexttoward
nexttowardf
nexttowardl
norm
normf
norml
perror
pow
powf
printf
__ms_printf == printf
printf_s
putc
putchar
puts
putwc
putwchar
qsort
qsort_s
raise
rand
rand_s
realloc
remainder
remainderf
remainderl
remove
remquo
remquof
remquol
rename
rewind
rint
rintf
rintl
round
roundf
roundl
scalbln
scalblnf
scalblnl
scalbn
scalbnf
scalbnl
scanf
__ms_scanf == scanf
scanf_s
setbuf
setjmp
setlocale
setvbuf
signal
sin
sinf
sinh
sinhf
sprintf
__ms_sprintf == sprintf
sprintf_s
sqrt
sqrtf
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
strpbrk
strrchr
strspn
strstr
strtod
strtof
strtoimax
strtok
strtok_s
strtol
strtold
strtoll
strtoul
strtoull
strtoumax
strxfrm
swprintf_s
swscanf
__ms_swscanf == swscanf
swscanf_s
system
tan
tanf
tanh
tanhf
tgamma
tgammaf
tgammal
tmpfile
tmpfile_s
tmpnam
tmpnam_s
tolower
toupper
towctrans
towlower
towupper
trunc
truncf
truncl
ungetc
ungetwc
vfprintf
__ms_vfprintf == vfprintf
vfprintf_s
vfscanf
vfscanf_s
vfwprintf
__ms_vfwprintf == vfwprintf
vfwprintf_s
vfwscanf
vfwscanf_s
vprintf
__ms_vprintf == vprintf
vprintf_s
vscanf
vscanf_s
vsprintf
__ms_vsprintf == vsprintf
vsprintf_s
vsscanf
vsscanf_s
vswprintf_s
vswscanf
vswscanf_s
vwprintf
__ms_vwprintf == vwprintf
vwprintf_s
vwscanf
vwscanf_s
wcrtomb
wcrtomb_s
wcscat
wcscat_s
wcschr
wcscmp
wcscoll
wcscpy
wcscpy_s
wcscspn
wcsftime
wcslen
wcsncat
wcsncat_s
wcsncmp
wcsncpy
wcsncpy_s
wcsnlen
wcspbrk
wcsrchr
wcsrtombs
wcsrtombs_s
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstok_s
wcstol
wcstold
wcstoll
wcstombs
wcstombs_s
wcstoul
wcstoull
wcstoumax
wcsxfrm
wctob
wctomb
wctomb_s
wctrans
wctype
wmemcpy_s
wmemmove_s
wprintf
__ms_wprintf == wprintf
wprintf_s
wscanf
__ms_wscanf == wscanf
wscanf_s

