;
; Definition file of WDSUTIL.dll
; Automatic generated by gendef
; written by Kai Tietz 2008
;
LIBRARY "WDSUTIL.dll"
EXPORTS
; public: __cdecl <class CStringUserSetting>::<class CStringUserSetting>(class <class CStringUserSetting> const &__ptr64 )__ptr64 
??0?$CShimUserSetting@VCStringUserSetting@@@@QEAA@AEBV0@@Z
; public: __cdecl <class CStringUserSetting>::<class CStringUserSetting>(void)__ptr64 
??0?$CShimUserSetting@VCStringUserSetting@@@@QEAA@XZ
; public: __cdecl <class CUInt32UserSetting>::<class CUInt32UserSetting>(class <class CUInt32UserSetting> const &__ptr64 )__ptr64 
??0?$CShimUserSetting@VCUInt32UserSetting@@@@QEAA@AEBV0@@Z
; public: __cdecl <class CUInt32UserSetting>::<class CUInt32UserSetting>(void)__ptr64 
??0?$CShimUserSetting@VCUInt32UserSetting@@@@QEAA@XZ
; public: __cdecl <class CUInt64UserSetting>::<class CUInt64UserSetting>(class <class CUInt64UserSetting> const &__ptr64 )__ptr64 
??0?$CShimUserSetting@VCUInt64UserSetting@@@@QEAA@AEBV0@@Z
; public: __cdecl <class CUInt64UserSetting>::<class CUInt64UserSetting>(void)__ptr64 
??0?$CShimUserSetting@VCUInt64UserSetting@@@@QEAA@XZ
; public: __cdecl CComputerNameSetting::CComputerNameSetting(class CComputerNameSetting const &__ptr64 )__ptr64 
??0CComputerNameSetting@@QEAA@AEBV0@@Z
; public: __cdecl CComputerNameSetting::CComputerNameSetting(void)__ptr64 
??0CComputerNameSetting@@QEAA@XZ
; public: __cdecl CDUUIProgressSetting::CDUUIProgressSetting(class CDUUIProgressSetting const &__ptr64 )__ptr64 
??0CDUUIProgressSetting@@QEAA@AEBV0@@Z
; public: __cdecl CDUUIProgressSetting::CDUUIProgressSetting(void)__ptr64 
??0CDUUIProgressSetting@@QEAA@XZ
; public: __cdecl CDUUIWelcomeSetting::CDUUIWelcomeSetting(class CDUUIWelcomeSetting const &__ptr64 )__ptr64 
??0CDUUIWelcomeSetting@@QEAA@AEBV0@@Z
; public: __cdecl CDUUIWelcomeSetting::CDUUIWelcomeSetting(void)__ptr64 
??0CDUUIWelcomeSetting@@QEAA@XZ
; public: __cdecl CDiskPartFileSystemUserSetting::CDiskPartFileSystemUserSetting(class CDiskPartFileSystemUserSetting const &__ptr64 )__ptr64 
??0CDiskPartFileSystemUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CDiskPartFileSystemUserSetting::CDiskPartFileSystemUserSetting(void)__ptr64 
??0CDiskPartFileSystemUserSetting@@QEAA@XZ
; public: __cdecl CDiskPartFormatUserSetting::CDiskPartFormatUserSetting(class CDiskPartFormatUserSetting const &__ptr64 )__ptr64 
??0CDiskPartFormatUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CDiskPartFormatUserSetting::CDiskPartFormatUserSetting(void)__ptr64 
??0CDiskPartFormatUserSetting@@QEAA@XZ
; public: __cdecl CDiskPartUserSetting::CDiskPartUserSetting(class CDiskPartUserSetting const &__ptr64 )__ptr64 
??0CDiskPartUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CDiskPartUserSetting::CDiskPartUserSetting(void)__ptr64 
??0CDiskPartUserSetting@@QEAA@XZ
; public: __cdecl CEulaSetting::CEulaSetting(class CEulaSetting const &__ptr64 )__ptr64 
??0CEulaSetting@@QEAA@AEBV0@@Z
; public: __cdecl CEulaSetting::CEulaSetting(void)__ptr64 
??0CEulaSetting@@QEAA@XZ
; public: __cdecl CIBSUIImageSelectionSetting::CIBSUIImageSelectionSetting(class CIBSUIImageSelectionSetting const &__ptr64 )__ptr64 
??0CIBSUIImageSelectionSetting@@QEAA@AEBV0@@Z
; public: __cdecl CIBSUIImageSelectionSetting::CIBSUIImageSelectionSetting(void)__ptr64 
??0CIBSUIImageSelectionSetting@@QEAA@XZ
; public: __cdecl CKeyboardSetting::CKeyboardSetting(class CKeyboardSetting const &__ptr64 )__ptr64 
??0CKeyboardSetting@@QEAA@AEBV0@@Z
; public: __cdecl CKeyboardSetting::CKeyboardSetting(void)__ptr64 
??0CKeyboardSetting@@QEAA@XZ
; public: __cdecl COOBEUIFinishSetting::COOBEUIFinishSetting(class COOBEUIFinishSetting const &__ptr64 )__ptr64 
??0COOBEUIFinishSetting@@QEAA@AEBV0@@Z
; public: __cdecl COOBEUIFinishSetting::COOBEUIFinishSetting(void)__ptr64 
??0COOBEUIFinishSetting@@QEAA@XZ
; public: __cdecl COOBEUIWelcomeSetting::COOBEUIWelcomeSetting(class COOBEUIWelcomeSetting const &__ptr64 )__ptr64 
??0COOBEUIWelcomeSetting@@QEAA@AEBV0@@Z
; public: __cdecl COOBEUIWelcomeSetting::COOBEUIWelcomeSetting(void)__ptr64 
??0COOBEUIWelcomeSetting@@QEAA@XZ
; public: __cdecl CProductKeyUserSetting::CProductKeyUserSetting(class CProductKeyUserSetting const &__ptr64 )__ptr64 
??0CProductKeyUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CProductKeyUserSetting::CProductKeyUserSetting(void)__ptr64 
??0CProductKeyUserSetting@@QEAA@XZ
; public: __cdecl CSetupUISummarySetting::CSetupUISummarySetting(class CSetupUISummarySetting const &__ptr64 )__ptr64 
??0CSetupUISummarySetting@@QEAA@AEBV0@@Z
; public: __cdecl CSetupUISummarySetting::CSetupUISummarySetting(void)__ptr64 
??0CSetupUISummarySetting@@QEAA@XZ
; public: __cdecl CSetupUIWelcomeSetting::CSetupUIWelcomeSetting(class CSetupUIWelcomeSetting const &__ptr64 )__ptr64 
??0CSetupUIWelcomeSetting@@QEAA@AEBV0@@Z
; public: __cdecl CSetupUIWelcomeSetting::CSetupUIWelcomeSetting(void)__ptr64 
??0CSetupUIWelcomeSetting@@QEAA@XZ
; public: __cdecl CShimStringUserSetting::CShimStringUserSetting(class CShimStringUserSetting const &__ptr64 )__ptr64 
??0CShimStringUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CShimStringUserSetting::CShimStringUserSetting(void)__ptr64 
??0CShimStringUserSetting@@QEAA@XZ
; public: __cdecl CShimUInt32UserSetting::CShimUInt32UserSetting(class CShimUInt32UserSetting const &__ptr64 )__ptr64 
??0CShimUInt32UserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CShimUInt32UserSetting::CShimUInt32UserSetting(void)__ptr64 
??0CShimUInt32UserSetting@@QEAA@XZ
; public: __cdecl CShimUInt64UserSetting::CShimUInt64UserSetting(class CShimUInt64UserSetting const &__ptr64 )__ptr64 
??0CShimUInt64UserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CShimUInt64UserSetting::CShimUInt64UserSetting(void)__ptr64 
??0CShimUInt64UserSetting@@QEAA@XZ
; protected: __cdecl CShowFlagUserSetting::CShowFlagUserSetting(void)__ptr64 
??0CShowFlagUserSetting@@IEAA@XZ
; public: __cdecl CShowFlagUserSetting::CShowFlagUserSetting(class CShowFlagUserSetting const &__ptr64 )__ptr64 
??0CShowFlagUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CSimpleStringUserSetting::CSimpleStringUserSetting(class CSimpleStringUserSetting const &__ptr64 )__ptr64 
??0CSimpleStringUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CSimpleStringUserSetting::CSimpleStringUserSetting(void)__ptr64 
??0CSimpleStringUserSetting@@QEAA@XZ
; public: __cdecl CSimpleUInt32UserSetting::CSimpleUInt32UserSetting(class CSimpleUInt32UserSetting const &__ptr64 )__ptr64 
??0CSimpleUInt32UserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CSimpleUInt32UserSetting::CSimpleUInt32UserSetting(void)__ptr64 
??0CSimpleUInt32UserSetting@@QEAA@XZ
; public: __cdecl CSimpleUInt64UserSetting::CSimpleUInt64UserSetting(class CSimpleUInt64UserSetting const &__ptr64 )__ptr64 
??0CSimpleUInt64UserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CSimpleUInt64UserSetting::CSimpleUInt64UserSetting(void)__ptr64 
??0CSimpleUInt64UserSetting@@QEAA@XZ
; protected: __cdecl CStringUserSetting::CStringUserSetting(void)__ptr64 
??0CStringUserSetting@@IEAA@XZ
; public: __cdecl CStringUserSetting::CStringUserSetting(class CStringUserSetting const &__ptr64 )__ptr64 
??0CStringUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CTimezoneSetting::CTimezoneSetting(class CTimezoneSetting const &__ptr64 )__ptr64 
??0CTimezoneSetting@@QEAA@AEBV0@@Z
; public: __cdecl CTimezoneSetting::CTimezoneSetting(void)__ptr64 
??0CTimezoneSetting@@QEAA@XZ
; protected: __cdecl CUInt32UserSetting::CUInt32UserSetting(void)__ptr64 
??0CUInt32UserSetting@@IEAA@XZ
; public: __cdecl CUInt32UserSetting::CUInt32UserSetting(class CUInt32UserSetting const &__ptr64 )__ptr64 
??0CUInt32UserSetting@@QEAA@AEBV0@@Z
; protected: __cdecl CUInt64UserSetting::CUInt64UserSetting(void)__ptr64 
??0CUInt64UserSetting@@IEAA@XZ
; public: __cdecl CUInt64UserSetting::CUInt64UserSetting(class CUInt64UserSetting const &__ptr64 )__ptr64 
??0CUInt64UserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CUpgStoreUserSetting::CUpgStoreUserSetting(class CUpgStoreUserSetting const &__ptr64 )__ptr64 
??0CUpgStoreUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CUpgStoreUserSetting::CUpgStoreUserSetting(void)__ptr64 
??0CUpgStoreUserSetting@@QEAA@XZ
; public: __cdecl CUpgradeUserSetting::CUpgradeUserSetting(class CUpgradeUserSetting const &__ptr64 )__ptr64 
??0CUpgradeUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CUpgradeUserSetting::CUpgradeUserSetting(void)__ptr64 
??0CUpgradeUserSetting@@QEAA@XZ
; public: __cdecl CUserSetting::CUserSetting(class CUserSetting const &__ptr64 )__ptr64 
??0CUserSetting@@QEAA@AEBV0@@Z
; public: __cdecl CUserSetting::CUserSetting(void)__ptr64 
??0CUserSetting@@QEAA@XZ
; public: __cdecl CWDSUIImageSelectionSetting::CWDSUIImageSelectionSetting(class CWDSUIImageSelectionSetting const &__ptr64 )__ptr64 
??0CWDSUIImageSelectionSetting@@QEAA@AEBV0@@Z
; public: __cdecl CWDSUIImageSelectionSetting::CWDSUIImageSelectionSetting(void)__ptr64 
??0CWDSUIImageSelectionSetting@@QEAA@XZ
; public: __cdecl CWDSUIWelcomeSetting::CWDSUIWelcomeSetting(class CWDSUIWelcomeSetting const &__ptr64 )__ptr64 
??0CWDSUIWelcomeSetting@@QEAA@AEBV0@@Z
; public: __cdecl CWDSUIWelcomeSetting::CWDSUIWelcomeSetting(void)__ptr64 
??0CWDSUIWelcomeSetting@@QEAA@XZ
; public: __cdecl <class CStringUserSetting>::~<class CStringUserSetting>(void)__ptr64 
??1?$CShimUserSetting@VCStringUserSetting@@@@QEAA@XZ
; public: __cdecl <class CUInt32UserSetting>::~<class CUInt32UserSetting>(void)__ptr64 
??1?$CShimUserSetting@VCUInt32UserSetting@@@@QEAA@XZ
; public: __cdecl <class CUInt64UserSetting>::~<class CUInt64UserSetting>(void)__ptr64 
??1?$CShimUserSetting@VCUInt64UserSetting@@@@QEAA@XZ
; public: __cdecl CComputerNameSetting::~CComputerNameSetting(void)__ptr64 
??1CComputerNameSetting@@QEAA@XZ
; public: __cdecl CDUUIProgressSetting::~CDUUIProgressSetting(void)__ptr64 
??1CDUUIProgressSetting@@QEAA@XZ
; public: __cdecl CDUUIWelcomeSetting::~CDUUIWelcomeSetting(void)__ptr64 
??1CDUUIWelcomeSetting@@QEAA@XZ
; public: __cdecl CDiskPartFileSystemUserSetting::~CDiskPartFileSystemUserSetting(void)__ptr64 
??1CDiskPartFileSystemUserSetting@@QEAA@XZ
; public: __cdecl CDiskPartFormatUserSetting::~CDiskPartFormatUserSetting(void)__ptr64 
??1CDiskPartFormatUserSetting@@QEAA@XZ
; public: __cdecl CDiskPartUserSetting::~CDiskPartUserSetting(void)__ptr64 
??1CDiskPartUserSetting@@QEAA@XZ
; public: __cdecl CEulaSetting::~CEulaSetting(void)__ptr64 
??1CEulaSetting@@QEAA@XZ
; public: __cdecl CIBSUIImageSelectionSetting::~CIBSUIImageSelectionSetting(void)__ptr64 
??1CIBSUIImageSelectionSetting@@QEAA@XZ
; public: __cdecl CKeyboardSetting::~CKeyboardSetting(void)__ptr64 
??1CKeyboardSetting@@QEAA@XZ
; public: __cdecl COOBEUIFinishSetting::~COOBEUIFinishSetting(void)__ptr64 
??1COOBEUIFinishSetting@@QEAA@XZ
; public: __cdecl COOBEUIWelcomeSetting::~COOBEUIWelcomeSetting(void)__ptr64 
??1COOBEUIWelcomeSetting@@QEAA@XZ
; public: __cdecl CProductKeyUserSetting::~CProductKeyUserSetting(void)__ptr64 
??1CProductKeyUserSetting@@QEAA@XZ
; public: __cdecl CSetupUISummarySetting::~CSetupUISummarySetting(void)__ptr64 
??1CSetupUISummarySetting@@QEAA@XZ
; public: __cdecl CSetupUIWelcomeSetting::~CSetupUIWelcomeSetting(void)__ptr64 
??1CSetupUIWelcomeSetting@@QEAA@XZ
; public: __cdecl CShimStringUserSetting::~CShimStringUserSetting(void)__ptr64 
??1CShimStringUserSetting@@QEAA@XZ
; public: __cdecl CShimUInt32UserSetting::~CShimUInt32UserSetting(void)__ptr64 
??1CShimUInt32UserSetting@@QEAA@XZ
; public: __cdecl CShimUInt64UserSetting::~CShimUInt64UserSetting(void)__ptr64 
??1CShimUInt64UserSetting@@QEAA@XZ
; protected: __cdecl CShowFlagUserSetting::~CShowFlagUserSetting(void)__ptr64 
??1CShowFlagUserSetting@@IEAA@XZ
; public: __cdecl CSimpleStringUserSetting::~CSimpleStringUserSetting(void)__ptr64 
??1CSimpleStringUserSetting@@QEAA@XZ
; public: __cdecl CSimpleUInt32UserSetting::~CSimpleUInt32UserSetting(void)__ptr64 
??1CSimpleUInt32UserSetting@@QEAA@XZ
; public: __cdecl CSimpleUInt64UserSetting::~CSimpleUInt64UserSetting(void)__ptr64 
??1CSimpleUInt64UserSetting@@QEAA@XZ
; protected: __cdecl CStringUserSetting::~CStringUserSetting(void)__ptr64 
??1CStringUserSetting@@IEAA@XZ
; public: __cdecl CTimezoneSetting::~CTimezoneSetting(void)__ptr64 
??1CTimezoneSetting@@QEAA@XZ
; protected: __cdecl CUInt32UserSetting::~CUInt32UserSetting(void)__ptr64 
??1CUInt32UserSetting@@IEAA@XZ
; protected: __cdecl CUInt64UserSetting::~CUInt64UserSetting(void)__ptr64 
??1CUInt64UserSetting@@IEAA@XZ
; public: __cdecl CUpgStoreUserSetting::~CUpgStoreUserSetting(void)__ptr64 
??1CUpgStoreUserSetting@@QEAA@XZ
; public: __cdecl CUpgradeUserSetting::~CUpgradeUserSetting(void)__ptr64 
??1CUpgradeUserSetting@@QEAA@XZ
; public: __cdecl CUserSetting::~CUserSetting(void)__ptr64 
??1CUserSetting@@QEAA@XZ
; public: __cdecl CWDSUIImageSelectionSetting::~CWDSUIImageSelectionSetting(void)__ptr64 
??1CWDSUIImageSelectionSetting@@QEAA@XZ
; public: __cdecl CWDSUIWelcomeSetting::~CWDSUIWelcomeSetting(void)__ptr64 
??1CWDSUIWelcomeSetting@@QEAA@XZ
; public: class <class CStringUserSetting> &__ptr64 __cdecl <class CStringUserSetting>::operator =(class <class CStringUserSetting> const &__ptr64 )__ptr64 
??4?$CShimUserSetting@VCStringUserSetting@@@@QEAAAEAV0@AEBV0@@Z
; public: class <class CUInt32UserSetting> &__ptr64 __cdecl <class CUInt32UserSetting>::operator =(class <class CUInt32UserSetting> const &__ptr64 )__ptr64 
??4?$CShimUserSetting@VCUInt32UserSetting@@@@QEAAAEAV0@AEBV0@@Z
; public: class <class CUInt64UserSetting> &__ptr64 __cdecl <class CUInt64UserSetting>::operator =(class <class CUInt64UserSetting> const &__ptr64 )__ptr64 
??4?$CShimUserSetting@VCUInt64UserSetting@@@@QEAAAEAV0@AEBV0@@Z
; public: class CComputerNameSetting &__ptr64 __cdecl CComputerNameSetting::operator =(class CComputerNameSetting const &__ptr64 )__ptr64 
??4CComputerNameSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CDUUIProgressSetting &__ptr64 __cdecl CDUUIProgressSetting::operator =(class CDUUIProgressSetting const &__ptr64 )__ptr64 
??4CDUUIProgressSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CDUUIWelcomeSetting &__ptr64 __cdecl CDUUIWelcomeSetting::operator =(class CDUUIWelcomeSetting const &__ptr64 )__ptr64 
??4CDUUIWelcomeSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CDiskPartFileSystemUserSetting &__ptr64 __cdecl CDiskPartFileSystemUserSetting::operator =(class CDiskPartFileSystemUserSetting const &__ptr64 )__ptr64 
??4CDiskPartFileSystemUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CDiskPartFormatUserSetting &__ptr64 __cdecl CDiskPartFormatUserSetting::operator =(class CDiskPartFormatUserSetting const &__ptr64 )__ptr64 
??4CDiskPartFormatUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CDiskPartUserSetting &__ptr64 __cdecl CDiskPartUserSetting::operator =(class CDiskPartUserSetting const &__ptr64 )__ptr64 
??4CDiskPartUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CEulaSetting &__ptr64 __cdecl CEulaSetting::operator =(class CEulaSetting const &__ptr64 )__ptr64 
??4CEulaSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CIBSUIImageSelectionSetting &__ptr64 __cdecl CIBSUIImageSelectionSetting::operator =(class CIBSUIImageSelectionSetting const &__ptr64 )__ptr64 
??4CIBSUIImageSelectionSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CKeyboardSetting &__ptr64 __cdecl CKeyboardSetting::operator =(class CKeyboardSetting const &__ptr64 )__ptr64 
??4CKeyboardSetting@@QEAAAEAV0@AEBV0@@Z
; public: class COOBEUIFinishSetting &__ptr64 __cdecl COOBEUIFinishSetting::operator =(class COOBEUIFinishSetting const &__ptr64 )__ptr64 
??4COOBEUIFinishSetting@@QEAAAEAV0@AEBV0@@Z
; public: class COOBEUIWelcomeSetting &__ptr64 __cdecl COOBEUIWelcomeSetting::operator =(class COOBEUIWelcomeSetting const &__ptr64 )__ptr64 
??4COOBEUIWelcomeSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CProductKeyUserSetting &__ptr64 __cdecl CProductKeyUserSetting::operator =(class CProductKeyUserSetting const &__ptr64 )__ptr64 
??4CProductKeyUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CSetupUISummarySetting &__ptr64 __cdecl CSetupUISummarySetting::operator =(class CSetupUISummarySetting const &__ptr64 )__ptr64 
??4CSetupUISummarySetting@@QEAAAEAV0@AEBV0@@Z
; public: class CSetupUIWelcomeSetting &__ptr64 __cdecl CSetupUIWelcomeSetting::operator =(class CSetupUIWelcomeSetting const &__ptr64 )__ptr64 
??4CSetupUIWelcomeSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CShimStringUserSetting &__ptr64 __cdecl CShimStringUserSetting::operator =(class CShimStringUserSetting const &__ptr64 )__ptr64 
??4CShimStringUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CShimUInt32UserSetting &__ptr64 __cdecl CShimUInt32UserSetting::operator =(class CShimUInt32UserSetting const &__ptr64 )__ptr64 
??4CShimUInt32UserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CShimUInt64UserSetting &__ptr64 __cdecl CShimUInt64UserSetting::operator =(class CShimUInt64UserSetting const &__ptr64 )__ptr64 
??4CShimUInt64UserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CShowFlagUserSetting &__ptr64 __cdecl CShowFlagUserSetting::operator =(class CShowFlagUserSetting const &__ptr64 )__ptr64 
??4CShowFlagUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CSimpleStringUserSetting &__ptr64 __cdecl CSimpleStringUserSetting::operator =(class CSimpleStringUserSetting const &__ptr64 )__ptr64 
??4CSimpleStringUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CSimpleUInt32UserSetting &__ptr64 __cdecl CSimpleUInt32UserSetting::operator =(class CSimpleUInt32UserSetting const &__ptr64 )__ptr64 
??4CSimpleUInt32UserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CSimpleUInt64UserSetting &__ptr64 __cdecl CSimpleUInt64UserSetting::operator =(class CSimpleUInt64UserSetting const &__ptr64 )__ptr64 
??4CSimpleUInt64UserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CStringUserSetting &__ptr64 __cdecl CStringUserSetting::operator =(class CStringUserSetting const &__ptr64 )__ptr64 
??4CStringUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CTimezoneSetting &__ptr64 __cdecl CTimezoneSetting::operator =(class CTimezoneSetting const &__ptr64 )__ptr64 
??4CTimezoneSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CUInt32UserSetting &__ptr64 __cdecl CUInt32UserSetting::operator =(class CUInt32UserSetting const &__ptr64 )__ptr64 
??4CUInt32UserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CUInt64UserSetting &__ptr64 __cdecl CUInt64UserSetting::operator =(class CUInt64UserSetting const &__ptr64 )__ptr64 
??4CUInt64UserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CUpgStoreUserSetting &__ptr64 __cdecl CUpgStoreUserSetting::operator =(class CUpgStoreUserSetting const &__ptr64 )__ptr64 
??4CUpgStoreUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CUpgradeUserSetting &__ptr64 __cdecl CUpgradeUserSetting::operator =(class CUpgradeUserSetting const &__ptr64 )__ptr64 
??4CUpgradeUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CUserSetting &__ptr64 __cdecl CUserSetting::operator =(class CUserSetting const &__ptr64 )__ptr64 
??4CUserSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CWDSUIImageSelectionSetting &__ptr64 __cdecl CWDSUIImageSelectionSetting::operator =(class CWDSUIImageSelectionSetting const &__ptr64 )__ptr64 
??4CWDSUIImageSelectionSetting@@QEAAAEAV0@AEBV0@@Z
; public: class CWDSUIWelcomeSetting &__ptr64 __cdecl CWDSUIWelcomeSetting::operator =(class CWDSUIWelcomeSetting const &__ptr64 )__ptr64 
??4CWDSUIWelcomeSetting@@QEAAAEAV0@AEBV0@@Z
; const <class CStringUserSetting>::$vftable
??_7?$CShimUserSetting@VCStringUserSetting@@@@6B@ DATA
; const <class CUInt32UserSetting>::$vftable
??_7?$CShimUserSetting@VCUInt32UserSetting@@@@6B@ DATA
; const <class CUInt64UserSetting>::$vftable
??_7?$CShimUserSetting@VCUInt64UserSetting@@@@6B@ DATA
; const CComputerNameSetting::$vftable
??_7CComputerNameSetting@@6B@ DATA
; const CDUUIProgressSetting::$vftable
??_7CDUUIProgressSetting@@6B@ DATA
; const CDUUIWelcomeSetting::$vftable
??_7CDUUIWelcomeSetting@@6B@ DATA
; const CDiskPartFileSystemUserSetting::$vftable
??_7CDiskPartFileSystemUserSetting@@6B@ DATA
; const CDiskPartFormatUserSetting::$vftable
??_7CDiskPartFormatUserSetting@@6B@ DATA
; const CDiskPartUserSetting::$vftable
??_7CDiskPartUserSetting@@6B@ DATA
; const CEulaSetting::$vftable
??_7CEulaSetting@@6B@ DATA
; const CIBSUIImageSelectionSetting::$vftable
??_7CIBSUIImageSelectionSetting@@6B@ DATA
; const CKeyboardSetting::$vftable
??_7CKeyboardSetting@@6B@ DATA
; const COOBEUIFinishSetting::$vftable
??_7COOBEUIFinishSetting@@6B@ DATA
; const COOBEUIWelcomeSetting::$vftable
??_7COOBEUIWelcomeSetting@@6B@ DATA
; const CProductKeyUserSetting::$vftable
??_7CProductKeyUserSetting@@6B@ DATA
; const CSetupUISummarySetting::$vftable
??_7CSetupUISummarySetting@@6B@ DATA
; const CSetupUIWelcomeSetting::$vftable
??_7CSetupUIWelcomeSetting@@6B@ DATA
; const CShimStringUserSetting::$vftable
??_7CShimStringUserSetting@@6B@ DATA
; const CShimUInt32UserSetting::$vftable
??_7CShimUInt32UserSetting@@6B@ DATA
; const CShimUInt64UserSetting::$vftable
??_7CShimUInt64UserSetting@@6B@ DATA
; const CShowFlagUserSetting::$vftable
??_7CShowFlagUserSetting@@6B@ DATA
; const CSimpleStringUserSetting::$vftable
??_7CSimpleStringUserSetting@@6B@ DATA
; const CSimpleUInt32UserSetting::$vftable
??_7CSimpleUInt32UserSetting@@6B@ DATA
; const CSimpleUInt64UserSetting::$vftable
??_7CSimpleUInt64UserSetting@@6B@ DATA
; const CStringUserSetting::$vftable
??_7CStringUserSetting@@6B@ DATA
; const CTimezoneSetting::$vftable
??_7CTimezoneSetting@@6B@ DATA
; const CUInt32UserSetting::$vftable
??_7CUInt32UserSetting@@6B@ DATA
; const CUInt64UserSetting::$vftable
??_7CUInt64UserSetting@@6B@ DATA
; const CUpgStoreUserSetting::$vftable
??_7CUpgStoreUserSetting@@6B@ DATA
; const CUpgradeUserSetting::$vftable
??_7CUpgradeUserSetting@@6B@ DATA
; const CUserSetting::$vftable
??_7CUserSetting@@6B@ DATA
; const CWDSUIImageSelectionSetting::$vftable
??_7CWDSUIImageSelectionSetting@@6B@ DATA
; const CWDSUIWelcomeSetting::$vftable
??_7CWDSUIWelcomeSetting@@6B@ DATA
; protected: void __cdecl CUserSetting::AcquireMutex(void)__ptr64 
?AcquireMutex@CUserSetting@@IEAAXXZ
; protected: long __cdecl CUserSetting::DeserializeField(unsigned short const *__ptr64,unsigned int,struct WDS_DATA *__ptr64,int)__ptr64 
?DeserializeField@CUserSetting@@IEAAJPEBGIPEAUWDS_DATA@@H@Z
; protected: long __cdecl CStringUserSetting::DeserializeString(unsigned short *__ptr64 *__ptr64,int)__ptr64 
?DeserializeString@CStringUserSetting@@IEAAJPEAPEAGH@Z
; protected: long __cdecl CUInt32UserSetting::DeserializeUInt32(unsigned int *__ptr64,int)__ptr64 
?DeserializeUInt32@CUInt32UserSetting@@IEAAJPEAIH@Z
; protected: long __cdecl CUInt64UserSetting::DeserializeUInt64(unsigned __int64 *__ptr64,int)__ptr64 
?DeserializeUInt64@CUInt64UserSetting@@IEAAJPEA_KH@Z
DiskRegionSupportsCapabilityForType
DiskSupportsCapabilityForType
FreeReason
GetApplicableDiskReason
GetApplicableDiskRegionReason
; protected: struct _BLACKBOARD *__ptr64 __cdecl CUserSetting::GetBlackboard(void)__ptr64 
?GetBlackboard@CUserSetting@@IEAAPEAU_BLACKBOARD@@XZ
GetDiskKey
; protected: long __cdecl CUserSetting::GetKeyName(unsigned short *__ptr64,int,int)__ptr64 
?GetKeyName@CUserSetting@@IEAAJPEAGHH@Z
; public: void *__ptr64 __cdecl CUserSetting::GetModuleId(void)__ptr64 
?GetModuleId@CUserSetting@@QEAAPEAXXZ
GetRegionKey
; public: static int __cdecl CUpgradeUserSetting::IsUpgrade(void)
?IsUpgrade@CUpgradeUserSetting@@SAHXZ
LogDiskReasons
LogDiskRegionReasons
; protected: long __cdecl CUserSetting::ReadError(long *__ptr64,int)__ptr64 
?ReadError@CUserSetting@@IEAAJPEAJH@Z
; protected: long __cdecl CUserSetting::ReadShow(int *__ptr64,int)__ptr64 
?ReadShow@CUserSetting@@IEAAJPEAHH@Z
; protected: void __cdecl CUserSetting::ReleaseMutex(void)__ptr64 
?ReleaseMutex@CUserSetting@@IEAAXXZ
; protected: void __cdecl CUserSetting::SerializeField(unsigned short const *__ptr64,struct WDS_DATA *__ptr64)__ptr64 
?SerializeField@CUserSetting@@IEAAXPEBGPEAUWDS_DATA@@@Z
; protected: void __cdecl CStringUserSetting::SerializeString(unsigned short const *__ptr64)__ptr64 
?SerializeString@CStringUserSetting@@IEAAXPEBG@Z
; protected: void __cdecl CUInt32UserSetting::SerializeUInt32(unsigned int)__ptr64 
?SerializeUInt32@CUInt32UserSetting@@IEAAXI@Z
; protected: void __cdecl CUInt64UserSetting::SerializeUInt64(unsigned __int64)__ptr64 
?SerializeUInt64@CUInt64UserSetting@@IEAAX_K@Z
; public: void __cdecl CUserSetting::SetModuleId(void *__ptr64)__ptr64 
?SetModuleId@CUserSetting@@QEAAXPEAX@Z
; protected: long __cdecl CStringUserSetting::Simple_get_String(unsigned short *__ptr64 *__ptr64)__ptr64 
?Simple_get_String@CStringUserSetting@@IEAAJPEAPEAG@Z
; protected: long __cdecl CUInt32UserSetting::Simple_get_UInt32(unsigned int *__ptr64)__ptr64 
?Simple_get_UInt32@CUInt32UserSetting@@IEAAJPEAI@Z
; protected: long __cdecl CUInt64UserSetting::Simple_get_UInt64(unsigned __int64 *__ptr64)__ptr64 
?Simple_get_UInt64@CUInt64UserSetting@@IEAAJPEA_K@Z
; protected: long __cdecl CStringUserSetting::Simple_set_String(unsigned short const *__ptr64)__ptr64 
?Simple_set_String@CStringUserSetting@@IEAAJPEBG@Z
; protected: long __cdecl CUInt32UserSetting::Simple_set_UInt32(unsigned int)__ptr64 
?Simple_set_UInt32@CUInt32UserSetting@@IEAAJI@Z
; protected: long __cdecl CUInt64UserSetting::Simple_set_UInt64(unsigned __int64)__ptr64 
?Simple_set_UInt64@CUInt64UserSetting@@IEAAJ_K@Z
; public: static int __cdecl CUpgradeUserSetting::UnattendChecked(void)
?UnattendChecked@CUpgradeUserSetting@@SAHXZ
; protected: static unsigned short const *__ptr64 const const __ptr64 CUserSetting::c_stErrorName
?c_stErrorName@CUserSetting@@1QEBGEB DATA
; protected: static unsigned short const *__ptr64 const const __ptr64 CUserSetting::c_stMutex
?c_stMutex@CUserSetting@@1QEBGEB DATA
; protected: static unsigned short const *__ptr64 const const __ptr64 CUserSetting::c_stShowName
?c_stShowName@CUserSetting@@1QEBGEB DATA
; protected: static unsigned short const *__ptr64 const const __ptr64 CUserSetting::c_stValueName
?c_stValueName@CUserSetting@@1QEBGEB DATA
; public: virtual long __cdecl <class CStringUserSetting>::get_Error(long *__ptr64)__ptr64 
?get_Error@?$CShimUserSetting@VCStringUserSetting@@@@UEAAJPEAJ@Z
; public: virtual long __cdecl <class CUInt32UserSetting>::get_Error(long *__ptr64)__ptr64 
?get_Error@?$CShimUserSetting@VCUInt32UserSetting@@@@UEAAJPEAJ@Z
; public: virtual long __cdecl <class CUInt64UserSetting>::get_Error(long *__ptr64)__ptr64 
?get_Error@?$CShimUserSetting@VCUInt64UserSetting@@@@UEAAJPEAJ@Z
; public: virtual long __cdecl CShowFlagUserSetting::get_Error(long *__ptr64)__ptr64 
?get_Error@CShowFlagUserSetting@@UEAAJPEAJ@Z
; public: virtual long __cdecl CSimpleStringUserSetting::get_Error(long *__ptr64)__ptr64 
?get_Error@CSimpleStringUserSetting@@UEAAJPEAJ@Z
; public: virtual long __cdecl CSimpleUInt32UserSetting::get_Error(long *__ptr64)__ptr64 
?get_Error@CSimpleUInt32UserSetting@@UEAAJPEAJ@Z
; public: virtual long __cdecl CSimpleUInt64UserSetting::get_Error(long *__ptr64)__ptr64 
?get_Error@CSimpleUInt64UserSetting@@UEAAJPEAJ@Z
; private: virtual unsigned short *__ptr64 __cdecl CComputerNameSetting::get_Name(void)__ptr64 
?get_Name@CComputerNameSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CDUUIProgressSetting::get_Name(void)__ptr64 
?get_Name@CDUUIProgressSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CDUUIWelcomeSetting::get_Name(void)__ptr64 
?get_Name@CDUUIWelcomeSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CDiskPartFileSystemUserSetting::get_Name(void)__ptr64 
?get_Name@CDiskPartFileSystemUserSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CDiskPartFormatUserSetting::get_Name(void)__ptr64 
?get_Name@CDiskPartFormatUserSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CDiskPartUserSetting::get_Name(void)__ptr64 
?get_Name@CDiskPartUserSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CEulaSetting::get_Name(void)__ptr64 
?get_Name@CEulaSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CIBSUIImageSelectionSetting::get_Name(void)__ptr64 
?get_Name@CIBSUIImageSelectionSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CKeyboardSetting::get_Name(void)__ptr64 
?get_Name@CKeyboardSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl COOBEUIFinishSetting::get_Name(void)__ptr64 
?get_Name@COOBEUIFinishSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl COOBEUIWelcomeSetting::get_Name(void)__ptr64 
?get_Name@COOBEUIWelcomeSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CProductKeyUserSetting::get_Name(void)__ptr64 
?get_Name@CProductKeyUserSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CSetupUISummarySetting::get_Name(void)__ptr64 
?get_Name@CSetupUISummarySetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CSetupUIWelcomeSetting::get_Name(void)__ptr64 
?get_Name@CSetupUIWelcomeSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CTimezoneSetting::get_Name(void)__ptr64 
?get_Name@CTimezoneSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CUpgStoreUserSetting::get_Name(void)__ptr64 
?get_Name@CUpgStoreUserSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CUpgradeUserSetting::get_Name(void)__ptr64 
?get_Name@CUpgradeUserSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CWDSUIImageSelectionSetting::get_Name(void)__ptr64 
?get_Name@CWDSUIImageSelectionSetting@@EEAAPEAGXZ
; private: virtual unsigned short *__ptr64 __cdecl CWDSUIWelcomeSetting::get_Name(void)__ptr64 
?get_Name@CWDSUIWelcomeSetting@@EEAAPEAGXZ
; public: virtual long __cdecl <class CStringUserSetting>::get_Show(int *__ptr64)__ptr64 
?get_Show@?$CShimUserSetting@VCStringUserSetting@@@@UEAAJPEAH@Z
; public: virtual long __cdecl <class CUInt32UserSetting>::get_Show(int *__ptr64)__ptr64 
?get_Show@?$CShimUserSetting@VCUInt32UserSetting@@@@UEAAJPEAH@Z
; public: virtual long __cdecl <class CUInt64UserSetting>::get_Show(int *__ptr64)__ptr64 
?get_Show@?$CShimUserSetting@VCUInt64UserSetting@@@@UEAAJPEAH@Z
; public: virtual long __cdecl CComputerNameSetting::get_Show(int *__ptr64)__ptr64 
?get_Show@CComputerNameSetting@@UEAAJPEAH@Z
; public: virtual long __cdecl CDiskPartUserSetting::get_Show(int *__ptr64)__ptr64 
?get_Show@CDiskPartUserSetting@@UEAAJPEAH@Z
; public: virtual long __cdecl CShowFlagUserSetting::get_Show(int *__ptr64)__ptr64 
?get_Show@CShowFlagUserSetting@@UEAAJPEAH@Z
; public: virtual long __cdecl CSimpleStringUserSetting::get_Show(int *__ptr64)__ptr64 
?get_Show@CSimpleStringUserSetting@@UEAAJPEAH@Z
; public: virtual long __cdecl CSimpleUInt32UserSetting::get_Show(int *__ptr64)__ptr64 
?get_Show@CSimpleUInt32UserSetting@@UEAAJPEAH@Z
; public: virtual long __cdecl CSimpleUInt64UserSetting::get_Show(int *__ptr64)__ptr64 
?get_Show@CSimpleUInt64UserSetting@@UEAAJPEAH@Z
; public: virtual long __cdecl CShimStringUserSetting::get_String(unsigned short *__ptr64 *__ptr64)__ptr64 
?get_String@CShimStringUserSetting@@UEAAJPEAPEAG@Z
; public: virtual long __cdecl CSimpleStringUserSetting::get_String(unsigned short *__ptr64 *__ptr64)__ptr64 
?get_String@CSimpleStringUserSetting@@UEAAJPEAPEAG@Z
; public: virtual long __cdecl CDiskPartUserSetting::get_UInt32(unsigned int *__ptr64)__ptr64 
?get_UInt32@CDiskPartUserSetting@@UEAAJPEAI@Z
; public: virtual long __cdecl CShimUInt32UserSetting::get_UInt32(unsigned int *__ptr64)__ptr64 
?get_UInt32@CShimUInt32UserSetting@@UEAAJPEAI@Z
; public: virtual long __cdecl CSimpleUInt32UserSetting::get_UInt32(unsigned int *__ptr64)__ptr64 
?get_UInt32@CSimpleUInt32UserSetting@@UEAAJPEAI@Z
; public: virtual long __cdecl CShimUInt64UserSetting::get_UInt64(unsigned __int64 *__ptr64)__ptr64 
?get_UInt64@CShimUInt64UserSetting@@UEAAJPEA_K@Z
; public: virtual long __cdecl CSimpleUInt64UserSetting::get_UInt64(unsigned __int64 *__ptr64)__ptr64 
?get_UInt64@CSimpleUInt64UserSetting@@UEAAJPEA_K@Z
; private: virtual int __cdecl CComputerNameSetting::get_ValidateID(void)__ptr64 
?get_ValidateID@CComputerNameSetting@@EEAAHXZ
; private: virtual int __cdecl CDiskPartUserSetting::get_ValidateID(void)__ptr64 
?get_ValidateID@CDiskPartUserSetting@@EEAAHXZ
; private: virtual int __cdecl CProductKeyUserSetting::get_ValidateID(void)__ptr64 
?get_ValidateID@CProductKeyUserSetting@@EEAAHXZ
; public: long __cdecl CUserSetting::set_Error(long)__ptr64 
?set_Error@CUserSetting@@QEAAJJ@Z
; public: long __cdecl CUserSetting::set_Show(int)__ptr64 
?set_Show@CUserSetting@@QEAAJH@Z
; public: virtual long __cdecl CComputerNameSetting::set_String(unsigned short const *__ptr64)__ptr64 
?set_String@CComputerNameSetting@@UEAAJPEBG@Z
; public: virtual long __cdecl CShimStringUserSetting::set_String(unsigned short const *__ptr64)__ptr64 
?set_String@CShimStringUserSetting@@UEAAJPEBG@Z
; public: virtual long __cdecl CSimpleStringUserSetting::set_String(unsigned short const *__ptr64)__ptr64 
?set_String@CSimpleStringUserSetting@@UEAAJPEBG@Z
; public: virtual long __cdecl CDiskPartUserSetting::set_UInt32(unsigned int)__ptr64 
?set_UInt32@CDiskPartUserSetting@@UEAAJI@Z
; public: virtual long __cdecl CShimUInt32UserSetting::set_UInt32(unsigned int)__ptr64 
?set_UInt32@CShimUInt32UserSetting@@UEAAJI@Z
; public: virtual long __cdecl CSimpleUInt32UserSetting::set_UInt32(unsigned int)__ptr64 
?set_UInt32@CSimpleUInt32UserSetting@@UEAAJI@Z
; public: virtual long __cdecl CUpgradeUserSetting::set_UInt32(unsigned int)__ptr64 
?set_UInt32@CUpgradeUserSetting@@UEAAJI@Z
; public: virtual long __cdecl CShimUInt64UserSetting::set_UInt64(unsigned __int64)__ptr64 
?set_UInt64@CShimUInt64UserSetting@@UEAAJ_K@Z
; public: virtual long __cdecl CSimpleUInt64UserSetting::set_UInt64(unsigned __int64)__ptr64 
?set_UInt64@CSimpleUInt64UserSetting@@UEAAJ_K@Z
CallbackGetArgumentInt32
CallbackGetArgumentString
CallbackGetArgumentUInt64
IsCrossArchitectureInstall
PublishMessage
SignalSetupComplianceBlock
WdsCollectionAddString
WdsCollectionAddUInt32
WdsCollectionAddUInt64
WdsPickTempDriveBasedOnInstallDrive
WdsValidateInstallDrive
