; Listing generated by Microsoft (R) Optimizing Compiler Version 15.00.21022.08 

	TITLE	c:\Develop\DScaler423a\DScaler\SettingsMaster.cpp
	.686P
	.XMM
	include listing.inc
	.model	flat

INCLUDELIB OLDNAMES

PUBLIC	??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@XZ ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >
PUBLIC	??$?0V?$SmartPtr@VCSettingGroup@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CSettingGroup> >
PUBLIC	??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@ABV01@@Z ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >
PUBLIC	??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ; std::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?_Buy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE_NI@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Buy
PUBLIC	??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ; std::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?_Tidy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Tidy
PUBLIC	??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?IsSetByChannel@CSettingGroup@@QAEHXZ		; CSettingGroup::IsSetByChannel
PUBLIC	?IsSetByFormat@CSettingGroup@@QAEHXZ		; CSettingGroup::IsSetByFormat
PUBLIC	?IsSetByInput@CSettingGroup@@QAEHXZ		; CSettingGroup::IsSetByInput
PUBLIC	?IsSetByAudioInput@CSettingGroup@@QAEHXZ	; CSettingGroup::IsSetByAudioInput
PUBLIC	?erase@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::erase
PUBLIC	??8?$SmartPtr@VCSettingsHolder@@@@QAEHABV0@@Z	; SmartPtr<CSettingsHolder>::operator==
PUBLIC	?end@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::end
PUBLIC	??0?$_Iterator_with_base@Urandom_access_iterator_tag@std@@V?$SmartPtr@VCSettingGroup@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ ; std::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &,std::_Iterator_base_aux>::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &,std::_Iterator_base_aux>
PUBLIC	??0?$_Ranit@V?$SmartPtr@VCSettingGroup@@@@HPBV1@ABV1@@std@@QAE@XZ ; std::_Ranit<SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &>::_Ranit<SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &>
PUBLIC	??0?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??0?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?begin@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::begin
PUBLIC	?deallocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::allocator<SmartPtr<CSettingGroup> >::deallocate
PUBLIC	??$_Allocate@V?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@IPAV1@@Z ; std::_Allocate<SmartPtr<CSettingGroup> >
PUBLIC	?allocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEPAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::allocator<SmartPtr<CSettingGroup> >::allocate
PUBLIC	?capacity@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::capacity
PUBLIC	?max_size@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QBEIXZ ; std::allocator<SmartPtr<CSettingGroup> >::max_size
PUBLIC	?max_size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::max_size
PUBLIC	??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Destroy
PUBLIC	?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Xlen
PUBLIC	??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ; stdext::unchecked_uninitialized_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??$_Uninit_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> >,std::_Undefined_move_tag>
PUBLIC	??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ; stdext::_Unchecked_uninitialized_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Umove<SmartPtr<CSettingGroup> *>
PUBLIC	??$_Fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z ; std::_Fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >
PUBLIC	??$fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z ; std::fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >
PUBLIC	??$_Iter_random@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::_Iter_random<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
PUBLIC	??$_Move_cat@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::_Move_cat<SmartPtr<CSettingGroup> *>
PUBLIC	??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
PUBLIC	??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
PUBLIC	??4?$SmartPtr@VCSettingGroup@@@@QAEAAV0@ABV0@@Z	; SmartPtr<CSettingGroup>::operator=
PUBLIC	??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::forward_iterator_tag>
PUBLIC	??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
PUBLIC	??$_Move_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Move_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::random_access_iterator_tag,std::_Undefined_move_tag>
PUBLIC	??$_Unchecked_move_backward@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00@Z ; stdext::_Unchecked_move_backward<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
PUBLIC	?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Insert_n
PUBLIC	??G?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEHABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator-
PUBLIC	??Y?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=
PUBLIC	??Y?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=
PUBLIC	??H?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBE?AV01@H@Z ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+
PUBLIC	?insert@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@ABV?$SmartPtr@VCSettingGroup@@@@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::insert
PUBLIC	??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::_Ptr_cat<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
PUBLIC	??0?$SmartPtr@VCSettingGroup@@@@QAE@ABV0@@Z	; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
PUBLIC	??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z ; std::_Construct<SmartPtr<CSettingGroup>,SmartPtr<CSettingGroup> >
PUBLIC	?construct@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@ABV3@@Z ; std::allocator<SmartPtr<CSettingGroup> >::construct
PUBLIC	??_G?$SmartPtr@VCSettingGroup@@@@QAEPAXI@Z	; SmartPtr<CSettingGroup>::`scalar deleting destructor'
PUBLIC	??$_Destroy@V?$SmartPtr@VCSettingGroup@@@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::_Destroy<SmartPtr<CSettingGroup> >
PUBLIC	?destroy@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::allocator<SmartPtr<CSettingGroup> >::destroy
PUBLIC	??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	??$unchecked_uninitialized_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?_Ufill@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Ufill
PUBLIC	?push_back@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEXABV?$SmartPtr@VCSettingGroup@@@@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::push_back
PUBLIC	?acquire@?$SmartPtr@VCSettingGroup@@@@AAEXPAUCounter@@@Z ; SmartPtr<CSettingGroup>::acquire
PUBLIC	??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z ; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
PUBLIC	??_GCSettingGroup@@QAEPAXI@Z			; CSettingGroup::`scalar deleting destructor'
PUBLIC	?Clear@?$SmartPtr@VCSettingGroup@@@@QAEXXZ	; SmartPtr<CSettingGroup>::Clear
PUBLIC	??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ		; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
PUBLIC	?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
PUBLIC	??A?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator[]
PUBLIC	?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ; SmartPtr<CSettingGroup>::GetRawPointer
PUBLIC	??C?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ; SmartPtr<CSettingGroup>::operator->
PUBLIC	?GetMessageID@CSettingsHolder@@QAEJXZ		; CSettingsHolder::GetMessageID
PUBLIC	??D?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEABV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
PUBLIC	??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
PUBLIC	??E?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++
PUBLIC	??E?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++
_NbMonitors DD	01H DUP (?)
_hCurrentMon DD	01H DUP (?)
;	COMDAT ?LastGroup@?1??MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z@4PAV5@A
_BSS	SEGMENT
?LastGroup@?1??MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z@4PAV5@A DD 01H DUP (?) ; `CSettingsMaster::MakeSubSection'::`2'::LastGroup
;	COMDAT ?LastFlags@?1??MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z@4KA
_DATA	SEGMENT
?LastFlags@?1??MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z@4KA DD 0ffffffffH ; `CSettingsMaster::MakeSubSection'::`2'::LastFlags
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\settinggroup.h
;	COMDAT ?IsSetByAudioInput@CSettingGroup@@QAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?IsSetByAudioInput@CSettingGroup@@QAEHXZ PROC		; CSettingGroup::IsSetByAudioInput, COMDAT
; _this$ = ecx

; 68   :     BOOL IsSetByAudioInput() { return ((m_Flags & SETTING_BY_AUDIOINPUT) == SETTING_BY_AUDIOINPUT);};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 48 1c	 mov	 ecx, DWORD PTR [eax+28]
  0000d	83 e1 08	 and	 ecx, 8
  00010	33 c0		 xor	 eax, eax
  00012	83 f9 08	 cmp	 ecx, 8
  00015	0f 94 c0	 sete	 al
  00018	8b e5		 mov	 esp, ebp
  0001a	5d		 pop	 ebp
  0001b	c3		 ret	 0
?IsSetByAudioInput@CSettingGroup@@QAEHXZ ENDP		; CSettingGroup::IsSetByAudioInput
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?IsSetByChannel@CSettingGroup@@QAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?IsSetByChannel@CSettingGroup@@QAEHXZ PROC		; CSettingGroup::IsSetByChannel, COMDAT
; _this$ = ecx

; 65   :     BOOL IsSetByChannel() { return ((m_Flags & SETTING_BY_CHANNEL) == SETTING_BY_CHANNEL);};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 40 1c	 mov	 eax, DWORD PTR [eax+28]
  0000d	83 e0 01	 and	 eax, 1
  00010	83 e8 01	 sub	 eax, 1
  00013	f7 d8		 neg	 eax
  00015	1b c0		 sbb	 eax, eax
  00017	83 c0 01	 add	 eax, 1
  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c3		 ret	 0
?IsSetByChannel@CSettingGroup@@QAEHXZ ENDP		; CSettingGroup::IsSetByChannel
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?IsSetByInput@CSettingGroup@@QAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?IsSetByInput@CSettingGroup@@QAEHXZ PROC		; CSettingGroup::IsSetByInput, COMDAT
; _this$ = ecx

; 67   :     BOOL IsSetByInput() { return ((m_Flags & SETTING_BY_INPUT) == SETTING_BY_INPUT);};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 48 1c	 mov	 ecx, DWORD PTR [eax+28]
  0000d	83 e1 04	 and	 ecx, 4
  00010	33 c0		 xor	 eax, eax
  00012	83 f9 04	 cmp	 ecx, 4
  00015	0f 94 c0	 sete	 al
  00018	8b e5		 mov	 esp, ebp
  0001a	5d		 pop	 ebp
  0001b	c3		 ret	 0
?IsSetByInput@CSettingGroup@@QAEHXZ ENDP		; CSettingGroup::IsSetByInput
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?IsSetByFormat@CSettingGroup@@QAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?IsSetByFormat@CSettingGroup@@QAEHXZ PROC		; CSettingGroup::IsSetByFormat, COMDAT
; _this$ = ecx

; 66   :     BOOL IsSetByFormat() { return ((m_Flags & SETTING_BY_FORMAT) == SETTING_BY_FORMAT);};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 48 1c	 mov	 ecx, DWORD PTR [eax+28]
  0000d	83 e1 02	 and	 ecx, 2
  00010	33 c0		 xor	 eax, eax
  00012	83 f9 02	 cmp	 ecx, 2
  00015	0f 94 c0	 sete	 al
  00018	8b e5		 mov	 esp, ebp
  0001a	5d		 pop	 ebp
  0001b	c3		 ret	 0
?IsSetByFormat@CSettingGroup@@QAEHXZ ENDP		; CSettingGroup::IsSetByFormat
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\settingholder.h
_TEXT	ENDS
;	COMDAT ?GetMessageID@CSettingsHolder@@QAEJXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetMessageID@CSettingsHolder@@QAEJXZ PROC		; CSettingsHolder::GetMessageID, COMDAT
; _this$ = ecx

; 42   :     long GetMessageID() { return m_SetMessage; }

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 40 1c	 mov	 eax, DWORD PTR [eax+28]
  0000d	8b e5		 mov	 esp, ebp
  0000f	5d		 pop	 ebp
  00010	c3		 ret	 0
?GetMessageID@CSettingsHolder@@QAEJXZ ENDP		; CSettingsHolder::GetMessageID
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z
_TEXT	SEGMENT
__It$ = 8						; size = 4
___formal$ = 12						; size = 1
??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z PROC ; std::_Checked_base<SmartPtr<CSettingGroup> *>, COMDAT

; 1146 : 	{

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp

; 1147 : 		return _It;

  00003	8b 45 08	 mov	 eax, DWORD PTR __It$[ebp]
  00006	8b 00		 mov	 eax, DWORD PTR [eax]

; 1148 : 	}

  00008	5d		 pop	 ebp
  00009	c3		 ret	 0
??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z ENDP ; std::_Checked_base<SmartPtr<CSettingGroup> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Move_cat@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@@Z
_TEXT	SEGMENT
__Cat$ = -1						; size = 1
___formal$ = 8						; size = 4
??$_Move_cat@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@@Z PROC ; std::_Move_cat<SmartPtr<CSettingGroup> *>, COMDAT

; 1200 : 	{

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 1201 : 		typename _Move_operation_category<typename iterator_traits<_Iter>::value_type>::_Move_cat _Cat;
; 1202 : 		return (_Cat);

  00004	8a 45 ff	 mov	 al, BYTE PTR __Cat$[ebp]

; 1203 : 	}

  00007	8b e5		 mov	 esp, ebp
  00009	5d		 pop	 ebp
  0000a	c3		 ret	 0
??$_Move_cat@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@@Z ENDP ; std::_Move_cat<SmartPtr<CSettingGroup> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Iter_random@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@0@Z
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
___formal$ = 12						; size = 4
___formal$ = 16						; size = 4
??$_Iter_random@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@0@Z PROC ; std::_Iter_random<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>, COMDAT

; 993  : 	{	// return category from iterator argument

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 994  : 	typename _Iter_random_helper<
; 995  : 		iterator_traits<_Iter1>::iterator_category, 
; 996  : 		iterator_traits<_Iter2>::iterator_category>::_Iter_random_cat _Cat;
; 997  : 	return (_Cat);

  00004	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 998  : 	}

  00007	8b e5		 mov	 esp, ebp
  00009	5d		 pop	 ebp
  0000a	c3		 ret	 0
??$_Iter_random@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@0@Z ENDP ; std::_Iter_random<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z
_TEXT	SEGMENT
__Base_tag$ = -1					; size = 1
__It$ = 8						; size = 4
??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z PROC ; std::_Checked_base<SmartPtr<CSettingGroup> *>, COMDAT

; 1163 : 	{

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 1164 : 		typename _Checked_iterator_base_helper<_Iter>::_Checked_iterator_base_type_tag _Base_tag;
; 1165 : 		return _Checked_base(_It, _Base_tag);

  00004	0f b6 45 ff	 movzx	 eax, BYTE PTR __Base_tag$[ebp]
  00008	50		 push	 eax
  00009	8b 4d 08	 mov	 ecx, DWORD PTR __It$[ebp]
  0000c	51		 push	 ecx
  0000d	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00012	83 c4 08	 add	 esp, 8

; 1166 : 	}

  00015	8b e5		 mov	 esp, ebp
  00017	5d		 pop	 ebp
  00018	c3		 ret	 0
??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ENDP ; std::_Checked_base<SmartPtr<CSettingGroup> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z
_TEXT	SEGMENT
__Cat$ = -1						; size = 1
___formal$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z PROC ; std::_Ptr_cat<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>, COMDAT

; 1483 : 	{

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 1484 : 	typename _Ptr_cat_helper<_T1, _T2>::_Ptr_cat _Cat;
; 1485 : 	return (_Cat);

  00004	8a 45 ff	 mov	 al, BYTE PTR __Cat$[ebp]

; 1486 : 	}

  00007	8b e5		 mov	 esp, ebp
  00009	5d		 pop	 ebp
  0000a	c3		 ret	 0
??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z ENDP ; std::_Ptr_cat<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??$?0V?$SmartPtr@VCSettingGroup@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___formal$ = 8						; size = 4
??$?0V?$SmartPtr@VCSettingGroup@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z PROC ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CSettingGroup> >, COMDAT
; _this$ = ecx

; 128  : 		allocator(const allocator<_Other>&) _THROW0()

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 129  : 		{	// construct from a related allocator (do nothing)
; 130  : 		}

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b e5		 mov	 esp, ebp
  0000c	5d		 pop	 ebp
  0000d	c2 04 00	 ret	 4
??$?0V?$SmartPtr@VCSettingGroup@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ENDP ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?max_size@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QBEIXZ
_TEXT	SEGMENT
tv65 = -12						; size = 4
_this$ = -8						; size = 4
__Count$ = -4						; size = 4
?max_size@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QBEIXZ PROC ; std::allocator<SmartPtr<CSettingGroup> >::max_size, COMDAT
; _this$ = ecx

; 164  : 		{	// estimate maximum array size

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 0c	 sub	 esp, 12			; 0000000cH
  00006	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 165  : 		_SIZT _Count = (_SIZT)(-1) / sizeof (_Ty);

  00009	c7 45 fc ff ff
	ff 1f		 mov	 DWORD PTR __Count$[ebp], 536870911 ; 1fffffffH

; 166  : 		return (0 < _Count ? _Count : 1);

  00010	83 7d fc 00	 cmp	 DWORD PTR __Count$[ebp], 0
  00014	76 08		 jbe	 SHORT $LN3@max_size@11
  00016	8b 45 fc	 mov	 eax, DWORD PTR __Count$[ebp]
  00019	89 45 f4	 mov	 DWORD PTR tv65[ebp], eax
  0001c	eb 07		 jmp	 SHORT $LN4@max_size@11
$LN3@max_size@11:
  0001e	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR tv65[ebp], 1
$LN4@max_size@11:
  00025	8b 45 f4	 mov	 eax, DWORD PTR tv65[ebp]

; 167  : 		}

  00028	8b e5		 mov	 esp, ebp
  0002a	5d		 pop	 ebp
  0002b	c3		 ret	 0
?max_size@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QBEIXZ ENDP ; std::allocator<SmartPtr<CSettingGroup> >::max_size
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?deallocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@I@Z PROC ; std::allocator<SmartPtr<CSettingGroup> >::deallocate, COMDAT
; _this$ = ecx

; 139  : 		{	// deallocate object at _Ptr, ignore size

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 140  : 		::operator delete(_Ptr);

  00007	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  0000a	50		 push	 eax
  0000b	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00010	83 c4 04	 add	 esp, 4

; 141  : 		}

  00013	8b e5		 mov	 esp, ebp
  00015	5d		 pop	 ebp
  00016	c2 08 00	 ret	 8
?deallocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@I@Z ENDP ; std::allocator<SmartPtr<CSettingGroup> >::deallocate
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___formal$ = 8						; size = 4
??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@ABV01@@Z PROC ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >, COMDAT
; _this$ = ecx

; 123  : 	allocator(const allocator<_Ty>&) _THROW0()

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 124  : 		{	// construct by copying (do nothing)
; 125  : 		}

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b e5		 mov	 esp, ebp
  0000c	5d		 pop	 ebp
  0000d	c2 04 00	 ret	 4
??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@ABV01@@Z ENDP ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ?max_size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?max_size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::max_size, COMDAT
; _this$ = ecx

; 730  : 		{	// return maximum possible length of sequence

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 731  : 		return (this->_Alval.max_size());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	83 c1 08	 add	 ecx, 8
  0000d	e8 00 00 00 00	 call	 ?max_size@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QBEIXZ ; std::allocator<SmartPtr<CSettingGroup> >::max_size

; 732  : 		}

  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
?max_size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::max_size
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ?acquire@?$SmartPtr@VCSettingGroup@@@@AAEXPAUCounter@@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_c$ = 8							; size = 4
?acquire@?$SmartPtr@VCSettingGroup@@@@AAEXPAUCounter@@@Z PROC ; SmartPtr<CSettingGroup>::acquire, COMDAT
; _this$ = ecx

; 262  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 263  :         counter = c;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d 08	 mov	 ecx, DWORD PTR _c$[ebp]
  0000d	89 48 04	 mov	 DWORD PTR [eax+4], ecx

; 264  :         if (c)

  00010	83 7d 08 00	 cmp	 DWORD PTR _c$[ebp], 0
  00014	74 0d		 je	 SHORT $LN2@acquire@10

; 265  :         {
; 266  :             (c->count)++;

  00016	8b 55 08	 mov	 edx, DWORD PTR _c$[ebp]
  00019	8b 02		 mov	 eax, DWORD PTR [edx]
  0001b	83 c0 01	 add	 eax, 1
  0001e	8b 4d 08	 mov	 ecx, DWORD PTR _c$[ebp]
  00021	89 01		 mov	 DWORD PTR [ecx], eax
$LN2@acquire@10:

; 267  :         }
; 268  :     }

  00023	8b e5		 mov	 esp, ebp
  00025	5d		 pop	 ebp
  00026	c2 04 00	 ret	 4
?acquire@?$SmartPtr@VCSettingGroup@@@@AAEXPAUCounter@@@Z ENDP ; SmartPtr<CSettingGroup>::acquire
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@XZ PROC ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >, COMDAT
; _this$ = ecx

; 119  : 	allocator() _THROW0()

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 120  : 		{	// construct default allocator (do nothing)
; 121  : 		}

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b e5		 mov	 esp, ebp
  0000c	5d		 pop	 ebp
  0000d	c3		 ret	 0
??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@XZ ENDP ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ?capacity@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ
_TEXT	SEGMENT
tv70 = -8						; size = 4
_this$ = -4						; size = 4
?capacity@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::capacity, COMDAT
; _this$ = ecx

; 634  : 		{	// return current length of allocated storage

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 08	 sub	 esp, 8
  00006	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 635  : 		return (_Myfirst == 0 ? 0 : _Myend - _Myfirst);

  00009	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	83 78 0c 00	 cmp	 DWORD PTR [eax+12], 0
  00010	75 09		 jne	 SHORT $LN3@capacity@11
  00012	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR tv70[ebp], 0
  00019	eb 12		 jmp	 SHORT $LN4@capacity@11
$LN3@capacity@11:
  0001b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001e	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00021	8b 41 14	 mov	 eax, DWORD PTR [ecx+20]
  00024	2b 42 0c	 sub	 eax, DWORD PTR [edx+12]
  00027	c1 f8 03	 sar	 eax, 3
  0002a	89 45 f8	 mov	 DWORD PTR tv70[ebp], eax
$LN4@capacity@11:
  0002d	8b 45 f8	 mov	 eax, DWORD PTR tv70[ebp]

; 636  : 		}

  00030	8b e5		 mov	 esp, ebp
  00032	5d		 pop	 ebp
  00033	c3		 ret	 0
?capacity@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::capacity
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ??8?$SmartPtr@VCSettingsHolder@@@@QAEHABV0@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_rhs$ = 8						; size = 4
??8?$SmartPtr@VCSettingsHolder@@@@QAEHABV0@@Z PROC	; SmartPtr<CSettingsHolder>::operator==, COMDAT
; _this$ = ecx

; 127  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 128  :         return rawPtr == rhs.rawPtr;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d 08	 mov	 ecx, DWORD PTR _rhs$[ebp]
  0000d	8b 10		 mov	 edx, DWORD PTR [eax]
  0000f	33 c0		 xor	 eax, eax
  00011	3b 11		 cmp	 edx, DWORD PTR [ecx]
  00013	0f 94 c0	 sete	 al

; 129  :     }

  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c2 04 00	 ret	 4
??8?$SmartPtr@VCSettingsHolder@@@@QAEHABV0@@Z ENDP	; SmartPtr<CSettingsHolder>::operator==
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size, COMDAT
; _this$ = ecx

; 725  : 		{	// return length of sequence

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 726  : 		return (_Mylast - _Myfirst);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000d	8b 40 10	 mov	 eax, DWORD PTR [eax+16]
  00010	2b 41 0c	 sub	 eax, DWORD PTR [ecx+12]
  00013	c1 f8 03	 sar	 eax, 3

; 727  : 		}

  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c3		 ret	 0
?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ??$_Allocate@V?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@IPAV1@@Z
_TEXT	SEGMENT
$T304866 = -12						; size = 12
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@V?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@IPAV1@@Z PROC ; std::_Allocate<SmartPtr<CSettingGroup> >, COMDAT

; 36   : 	{	// check for integer overflow

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 0c	 sub	 esp, 12			; 0000000cH

; 37   : 	if (_Count <= 0)

  00006	83 7d 08 00	 cmp	 DWORD PTR __Count$[ebp], 0
  0000a	77 09		 ja	 SHORT $LN3@Allocate@13

; 38   : 		_Count = 0;

  0000c	c7 45 08 00 00
	00 00		 mov	 DWORD PTR __Count$[ebp], 0
  00013	eb 25		 jmp	 SHORT $LN2@Allocate@13
$LN3@Allocate@13:

; 39   : 	else if (((_SIZT)(-1) / _Count) < sizeof (_Ty))

  00015	83 c8 ff	 or	 eax, -1
  00018	33 d2		 xor	 edx, edx
  0001a	f7 75 08	 div	 DWORD PTR __Count$[ebp]
  0001d	83 f8 08	 cmp	 eax, 8
  00020	73 18		 jae	 SHORT $LN2@Allocate@13

; 40   : 		_THROW_NCEE(std::bad_alloc, NULL);

  00022	6a 00		 push	 0
  00024	8d 4d f4	 lea	 ecx, DWORD PTR $T304866[ebp]
  00027	e8 00 00 00 00	 call	 ??0bad_alloc@std@@QAE@PBD@Z ; std::bad_alloc::bad_alloc
  0002c	68 00 00 00 00	 push	 OFFSET __TI2?AVbad_alloc@std@@
  00031	8d 45 f4	 lea	 eax, DWORD PTR $T304866[ebp]
  00034	50		 push	 eax
  00035	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN2@Allocate@13:

; 41   : 
; 42   : 		// allocate storage for _Count elements of type _Ty
; 43   : 	return ((_Ty _FARQ *)::operator new(_Count * sizeof (_Ty)));

  0003a	8b 4d 08	 mov	 ecx, DWORD PTR __Count$[ebp]
  0003d	c1 e1 03	 shl	 ecx, 3
  00040	51		 push	 ecx
  00041	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00046	83 c4 04	 add	 esp, 4
$LN5@Allocate@13:

; 44   : 	}

  00049	8b e5		 mov	 esp, ebp
  0004b	5d		 pop	 ebp
  0004c	c3		 ret	 0
??$_Allocate@V?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@IPAV1@@Z ENDP ; std::_Allocate<SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$_Iterator_with_base@Urandom_access_iterator_tag@std@@V?$SmartPtr@VCSettingGroup@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0?$_Iterator_with_base@Urandom_access_iterator_tag@std@@V?$SmartPtr@VCSettingGroup@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ PROC ; std::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &,std::_Iterator_base_aux>::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &,std::_Iterator_base_aux>, COMDAT
; _this$ = ecx
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??0_Iterator_base_aux@std@@QAE@XZ ; std::_Iterator_base_aux::_Iterator_base_aux
  0000f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
??0?$_Iterator_with_base@Urandom_access_iterator_tag@std@@V?$SmartPtr@VCSettingGroup@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ ENDP ; std::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &,std::_Iterator_base_aux>::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &,std::_Iterator_base_aux>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$_Ranit@V?$SmartPtr@VCSettingGroup@@@@HPBV1@ABV1@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0?$_Ranit@V?$SmartPtr@VCSettingGroup@@@@HPBV1@ABV1@@std@@QAE@XZ PROC ; std::_Ranit<SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &>::_Ranit<SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &>, COMDAT
; _this$ = ecx
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??0?$_Iterator_with_base@Urandom_access_iterator_tag@std@@V?$SmartPtr@VCSettingGroup@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ
  0000f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
??0?$_Ranit@V?$SmartPtr@VCSettingGroup@@@@HPBV1@ABV1@@std@@QAE@XZ ENDP ; std::_Ranit<SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &>::_Ranit<SmartPtr<CSettingGroup>,int,SmartPtr<CSettingGroup> const *,SmartPtr<CSettingGroup> const &>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ??0?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
__Pvector$ = 12						; size = 4
??0?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z PROC ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx

; 76   : 	_Vector_const_iterator(_Tptr _Ptr, const _Container_base *_Pvector)

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??0?$_Ranit@V?$SmartPtr@VCSettingGroup@@@@HPBV1@ABV1@@std@@QAE@XZ

; 77   : 		{	// construct with pointer _Ptr
; 78   : 		_SCL_SECURE_VALIDATE(_Pvector != NULL && ((_Myvec *)_Pvector)->_Myfirst <= _Ptr && _Ptr <= ((_Myvec *)_Pvector)->_Mylast);

  0000f	83 7d 0c 00	 cmp	 DWORD PTR __Pvector$[ebp], 0
  00013	74 16		 je	 SHORT $LN4@Vector_con@11
  00015	8b 45 0c	 mov	 eax, DWORD PTR __Pvector$[ebp]
  00018	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  0001b	3b 4d 08	 cmp	 ecx, DWORD PTR __Ptr$[ebp]
  0001e	77 0b		 ja	 SHORT $LN4@Vector_con@11
  00020	8b 55 0c	 mov	 edx, DWORD PTR __Pvector$[ebp]
  00023	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  00026	3b 42 10	 cmp	 eax, DWORD PTR [edx+16]
  00029	76 05		 jbe	 SHORT $LN2@Vector_con@11
$LN4@Vector_con@11:
  0002b	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@Vector_con@11:
  00030	33 c9		 xor	 ecx, ecx
  00032	75 fc		 jne	 SHORT $LN2@Vector_con@11

; 79   : 		this->_Set_container(_Pvector);

  00034	8b 55 0c	 mov	 edx, DWORD PTR __Pvector$[ebp]
  00037	52		 push	 edx
  00038	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0003b	e8 00 00 00 00	 call	 ?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z ; std::_Iterator_base_aux::_Set_container

; 80   : 		_Myptr = _Ptr;

  00040	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00043	8b 4d 08	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  00046	89 48 04	 mov	 DWORD PTR [eax+4], ecx

; 81   : 		}

  00049	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0004c	8b e5		 mov	 esp, ebp
  0004e	5d		 pop	 ebp
  0004f	c2 08 00	 ret	 8
??0?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ??0?$SmartPtr@VCSettingGroup@@@@QAE@ABV0@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_otherPtr$ = 8						; size = 4
??0?$SmartPtr@VCSettingGroup@@@@QAE@ABV0@@Z PROC	; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>, COMDAT
; _this$ = ecx

; 82   :     SmartPtr(const SmartPtr< X >& otherPtr)

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 83   :     {
; 84   :         acquire( otherPtr.counter );

  00007	8b 45 08	 mov	 eax, DWORD PTR _otherPtr$[ebp]
  0000a	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  0000d	51		 push	 ecx
  0000e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00011	e8 00 00 00 00	 call	 ?acquire@?$SmartPtr@VCSettingGroup@@@@AAEXPAUCounter@@@Z ; SmartPtr<CSettingGroup>::acquire

; 85   :         rawPtr = otherPtr.rawPtr;

  00016	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00019	8b 45 08	 mov	 eax, DWORD PTR _otherPtr$[ebp]
  0001c	8b 08		 mov	 ecx, DWORD PTR [eax]
  0001e	89 0a		 mov	 DWORD PTR [edx], ecx

; 86   :     }

  00020	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00023	8b e5		 mov	 esp, ebp
  00025	5d		 pop	 ebp
  00026	c2 04 00	 ret	 4
??0?$SmartPtr@VCSettingGroup@@@@QAE@ABV0@@Z ENDP	; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ??G?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEHABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Right$ = 8						; size = 4
??G?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEHABV01@@Z PROC ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator-, COMDAT
; _this$ = ecx

; 186  : 		{	// return difference of iterators

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 187  : 
; 188  :  #if _HAS_ITERATOR_DEBUGGING
; 189  : 		_Compat(_Right);
; 190  :  #else
; 191  : 		_SCL_SECURE_VALIDATE(this->_Has_container() && this->_Same_container(_Right));

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?_Has_container@_Iterator_base_aux@std@@QBE_NXZ ; std::_Iterator_base_aux::_Has_container
  0000f	0f b6 c0	 movzx	 eax, al
  00012	85 c0		 test	 eax, eax
  00014	74 13		 je	 SHORT $LN4@operator@65
  00016	8b 4d 08	 mov	 ecx, DWORD PTR __Right$[ebp]
  00019	51		 push	 ecx
  0001a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001d	e8 00 00 00 00	 call	 ?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z ; std::_Iterator_base_aux::_Same_container
  00022	0f b6 d0	 movzx	 edx, al
  00025	85 d2		 test	 edx, edx
  00027	75 05		 jne	 SHORT $LN2@operator@65
$LN4@operator@65:
  00029	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@65:
  0002e	33 c0		 xor	 eax, eax
  00030	75 fc		 jne	 SHORT $LN2@operator@65

; 192  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 193  : 
; 194  : 		return (_Myptr - _Right._Myptr);

  00032	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00035	8b 55 08	 mov	 edx, DWORD PTR __Right$[ebp]
  00038	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]
  0003b	2b 42 04	 sub	 eax, DWORD PTR [edx+4]
  0003e	c1 f8 03	 sar	 eax, 3

; 195  : 		}

  00041	8b e5		 mov	 esp, ebp
  00043	5d		 pop	 ebp
  00044	c2 04 00	 ret	 4
??G?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEHABV01@@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator-
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
__Pvector$ = 12						; size = 4
??0?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z PROC ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx

; 327  : 		{	// construct with pointer _Ptr

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 0c	 mov	 eax, DWORD PTR __Pvector$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 08	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  0000e	51		 push	 ecx
  0000f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00012	e8 00 00 00 00	 call	 ??0?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >

; 328  : 		}

  00017	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 08 00	 ret	 8
??0?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z ENDP ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ?allocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEPAV?$SmartPtr@VCSettingGroup@@@@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Count$ = 8						; size = 4
?allocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEPAV?$SmartPtr@VCSettingGroup@@@@I@Z PROC ; std::allocator<SmartPtr<CSettingGroup> >::allocate, COMDAT
; _this$ = ecx

; 144  : 		{	// allocate array of _Count elements

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 145  : 		return (_Allocate(_Count, (pointer)0));

  00007	6a 00		 push	 0
  00009	8b 45 08	 mov	 eax, DWORD PTR __Count$[ebp]
  0000c	50		 push	 eax
  0000d	e8 00 00 00 00	 call	 ??$_Allocate@V?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@IPAV1@@Z ; std::_Allocate<SmartPtr<CSettingGroup> >
  00012	83 c4 08	 add	 esp, 8

; 146  : 		}

  00015	8b e5		 mov	 esp, ebp
  00017	5d		 pop	 ebp
  00018	c2 04 00	 ret	 4
?allocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEPAV?$SmartPtr@VCSettingGroup@@@@I@Z ENDP ; std::allocator<SmartPtr<CSettingGroup> >::allocate
_TEXT	ENDS
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
xdata$x	SEGMENT
__unwindtable$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z$1
__ehfuncinfo$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
_TEXT	SEGMENT
tv133 = -32						; size = 4
_this$ = -28						; size = 4
$T304885 = -24						; size = 4
$T304884 = -20						; size = 4
$T304883 = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Al$ = 8						; size = 1
??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z PROC ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx

; 419  : 		{

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 14	 sub	 esp, 20			; 00000014H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d e4	 mov	 DWORD PTR _this$[ebp], ecx
  00028	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0002b	e8 00 00 00 00	 call	 ??0_Container_base_aux@std@@QAE@XZ ; std::_Container_base_aux::_Container_base_aux
  00030	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00037	8d 45 08	 lea	 eax, DWORD PTR __Al$[ebp]
  0003a	50		 push	 eax
  0003b	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0003e	83 c1 04	 add	 ecx, 4
  00041	e8 00 00 00 00	 call	 ??$?0V?$SmartPtr@VCSettingGroup@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CSettingGroup> >

; 420  : 		_Myownedaux = new (_Alaux.allocate(1)) _Aux_cont(this);

  00046	6a 01		 push	 1
  00048	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0004b	83 c1 04	 add	 ecx, 4
  0004e	e8 00 00 00 00	 call	 ?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z ; std::allocator<std::_Aux_cont>::allocate
  00053	89 45 e8	 mov	 DWORD PTR $T304885[ebp], eax
  00056	8b 4d e8	 mov	 ecx, DWORD PTR $T304885[ebp]
  00059	51		 push	 ecx
  0005a	6a 04		 push	 4
  0005c	e8 00 00 00 00	 call	 ??2@YAPAXIPAX@Z		; operator new
  00061	83 c4 08	 add	 esp, 8
  00064	89 45 ec	 mov	 DWORD PTR $T304884[ebp], eax
  00067	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0006b	83 7d ec 00	 cmp	 DWORD PTR $T304884[ebp], 0
  0006f	74 11		 je	 SHORT $LN3@Container_@12
  00071	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  00074	52		 push	 edx
  00075	8b 4d ec	 mov	 ecx, DWORD PTR $T304884[ebp]
  00078	e8 00 00 00 00	 call	 ??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z ; std::_Aux_cont::_Aux_cont
  0007d	89 45 e0	 mov	 DWORD PTR tv133[ebp], eax
  00080	eb 07		 jmp	 SHORT $LN4@Container_@12
$LN3@Container_@12:
  00082	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR tv133[ebp], 0
$LN4@Container_@12:
  00089	8b 45 e0	 mov	 eax, DWORD PTR tv133[ebp]
  0008c	89 45 f0	 mov	 DWORD PTR $T304883[ebp], eax
  0008f	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00093	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00096	8b 55 f0	 mov	 edx, DWORD PTR $T304883[ebp]
  00099	89 11		 mov	 DWORD PTR [ecx], edx

; 421  : 		}

  0009b	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000a2	8b 45 e4	 mov	 eax, DWORD PTR _this$[ebp]
  000a5	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000a8	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000af	59		 pop	 ecx
  000b0	8b e5		 mov	 esp, ebp
  000b2	5d		 pop	 ebp
  000b3	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z$0:
  00000	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1_Container_base_aux@std@@QAE@XZ ; std::_Container_base_aux::~_Container_base_aux
__unwindfunclet$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z$1:
  00008	8b 45 e8	 mov	 eax, DWORD PTR $T304885[ebp]
  0000b	50		 push	 eax
  0000c	8b 4d ec	 mov	 ecx, DWORD PTR $T304884[ebp]
  0000f	51		 push	 ecx
  00010	e8 00 00 00 00	 call	 ??3@YAXPAX0@Z		; operator delete
  00015	83 c4 08	 add	 esp, 8
  00018	c3		 ret	 0
__ehhandler$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z:
  00019	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001d	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00020	8b 4a e8	 mov	 ecx, DWORD PTR [edx-24]
  00023	33 c8		 xor	 ecx, eax
  00025	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002a	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
  0002f	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ENDP ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
;	COMDAT ?begin@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?begin@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::begin, COMDAT
; _this$ = ecx

; 640  : 		{	// return iterator for beginning of mutable sequence

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 641  : 		return (iterator(_Myfirst, this));

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	8b 51 0c	 mov	 edx, DWORD PTR [ecx+12]
  00011	52		 push	 edx
  00012	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00015	e8 00 00 00 00	 call	 ??0?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
  0001a	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 642  : 		}

  0001d	8b e5		 mov	 esp, ebp
  0001f	5d		 pop	 ebp
  00020	c2 04 00	 ret	 4
?begin@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::begin
_TEXT	ENDS
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
xdata$x	SEGMENT
__unwindtable$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ$0
__ehfuncinfo$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ PROC ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx

; 436  : 		{

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 437  : 		_Myownedaux->~_Aux_cont();
; 438  : 
; 439  : 		_Alaux.deallocate(_Myownedaux, 1);

  0002d	6a 01		 push	 1
  0002f	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00032	8b 08		 mov	 ecx, DWORD PTR [eax]
  00034	51		 push	 ecx
  00035	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00038	83 c1 04	 add	 ecx, 4
  0003b	e8 00 00 00 00	 call	 ?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z ; std::allocator<std::_Aux_cont>::deallocate

; 440  : 		}

  00040	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00047	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0004a	e8 00 00 00 00	 call	 ??1_Container_base_aux@std@@QAE@XZ ; std::_Container_base_aux::~_Container_base_aux
  0004f	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00052	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00059	59		 pop	 ecx
  0005a	8b e5		 mov	 esp, ebp
  0005c	5d		 pop	 ebp
  0005d	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1_Container_base_aux@std@@QAE@XZ ; std::_Container_base_aux::~_Container_base_aux
__ehhandler$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ ENDP ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
xdata$x	SEGMENT
__unwindtable$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z$0
__ehfuncinfo$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
_TEXT	SEGMENT
_this$ = -20						; size = 4
$T304909 = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Al$ = 8						; size = 1
??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z PROC ; std::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx

; 425  : 		{	// construct allocator from _Al

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 08	 sub	 esp, 8
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d ec	 mov	 DWORD PTR _this$[ebp], ecx
  00028	51		 push	 ecx
  00029	8b cc		 mov	 ecx, esp
  0002b	89 65 f0	 mov	 DWORD PTR $T304909[ebp], esp
  0002e	8d 45 08	 lea	 eax, DWORD PTR __Al$[ebp]
  00031	50		 push	 eax
  00032	e8 00 00 00 00	 call	 ??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@ABV01@@Z ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >
  00037	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  0003a	e8 00 00 00 00	 call	 ??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
  0003f	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00046	8d 4d 08	 lea	 ecx, DWORD PTR __Al$[ebp]
  00049	51		 push	 ecx
  0004a	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  0004d	83 c1 08	 add	 ecx, 8
  00050	e8 00 00 00 00	 call	 ??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@ABV01@@Z ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >

; 426  : 		}

  00055	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0005c	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  0005f	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00062	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00069	59		 pop	 ecx
  0006a	8b e5		 mov	 esp, ebp
  0006c	5d		 pop	 ebp
  0006d	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z$0:
  00000	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
__ehhandler$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f4	 mov	 ecx, DWORD PTR [edx-12]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ENDP ; std::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
;	COMDAT ?end@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?end@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::end, COMDAT
; _this$ = ecx

; 650  : 		{	// return iterator for end of mutable sequence

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 651  : 		return (iterator(_Mylast, this));

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  00011	52		 push	 edx
  00012	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00015	e8 00 00 00 00	 call	 ??0?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCSettingGroup@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
  0001a	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 652  : 		}

  0001d	8b e5		 mov	 esp, ebp
  0001f	5d		 pop	 ebp
  00020	c2 04 00	 ret	 4
?end@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::end
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ$0
__ehfuncinfo$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ PROC ; std::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0002d	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00034	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00037	e8 00 00 00 00	 call	 ??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
  0003c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0003f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00046	59		 pop	 ecx
  00047	8b e5		 mov	 esp, ebp
  00049	5d		 pop	 ebp
  0004a	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CSettingGroup> > >
__ehhandler$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ENDP ; std::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\smartptr.h
xdata$x	SEGMENT
__unwindtable$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ$0
__ehfuncinfo$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ
_TEXT	SEGMENT
tv72 = -32						; size = 4
_this$ = -28						; size = 4
$T304932 = -24						; size = 4
$T304931 = -20						; size = 4
$T304930 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ PROC ; SmartPtr<CSettingGroup>::GetRawPointer, COMDAT
; _this$ = ecx

; 205  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 14	 sub	 esp, 20			; 00000014H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d e4	 mov	 DWORD PTR _this$[ebp], ecx

; 206  :         if (rawPtr == 0) throw new NullPointerException;

  00028	8b 45 e4	 mov	 eax, DWORD PTR _this$[ebp]
  0002b	83 38 00	 cmp	 DWORD PTR [eax], 0
  0002e	75 4f		 jne	 SHORT $LN1@GetRawPoin@14
  00030	6a 0c		 push	 12			; 0000000cH
  00032	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00037	83 c4 04	 add	 esp, 4
  0003a	89 45 e8	 mov	 DWORD PTR $T304932[ebp], eax
  0003d	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00044	83 7d e8 00	 cmp	 DWORD PTR $T304932[ebp], 0
  00048	74 0d		 je	 SHORT $LN4@GetRawPoin@14
  0004a	8b 4d e8	 mov	 ecx, DWORD PTR $T304932[ebp]
  0004d	e8 00 00 00 00	 call	 ??0NullPointerException@@QAE@XZ ; NullPointerException::NullPointerException
  00052	89 45 e0	 mov	 DWORD PTR tv72[ebp], eax
  00055	eb 07		 jmp	 SHORT $LN5@GetRawPoin@14
$LN4@GetRawPoin@14:
  00057	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR tv72[ebp], 0
$LN5@GetRawPoin@14:
  0005e	8b 4d e0	 mov	 ecx, DWORD PTR tv72[ebp]
  00061	89 4d ec	 mov	 DWORD PTR $T304931[ebp], ecx
  00064	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0006b	8b 55 ec	 mov	 edx, DWORD PTR $T304931[ebp]
  0006e	89 55 f0	 mov	 DWORD PTR $T304930[ebp], edx
  00071	68 00 00 00 00	 push	 OFFSET __TI3PAUNullPointerException@@
  00076	8d 45 f0	 lea	 eax, DWORD PTR $T304930[ebp]
  00079	50		 push	 eax
  0007a	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN1@GetRawPoin@14:

; 207  :         return const_cast<X*>(rawPtr);

  0007f	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00082	8b 01		 mov	 eax, DWORD PTR [ecx]
$LN3@GetRawPoin@14:

; 208  :     }

  00084	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00087	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0008e	59		 pop	 ecx
  0008f	8b e5		 mov	 esp, ebp
  00091	5d		 pop	 ebp
  00092	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ$0:
  00000	8b 45 e8	 mov	 eax, DWORD PTR $T304932[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__ehhandler$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ:
  0000b	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000f	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00012	8b 4a e8	 mov	 ecx, DWORD PTR [edx-24]
  00015	33 c8		 xor	 ecx, eax
  00017	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0001c	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ENDP ; SmartPtr<CSettingGroup>::GetRawPointer
; Function compile flags: /Odtp
;	COMDAT ??C?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??C?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ PROC ; SmartPtr<CSettingGroup>::operator->, COMDAT
; _this$ = ecx

; 168  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 169  :         return GetRawPointer();

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ; SmartPtr<CSettingGroup>::GetRawPointer

; 170  :     }

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??C?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ENDP ; SmartPtr<CSettingGroup>::operator->
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z$0
__ehfuncinfo$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z
_TEXT	SEGMENT
tv78 = -28						; size = 4
_this$ = -24						; size = 4
$T304947 = -20						; size = 4
$T304946 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_raw$ = 8						; size = 4
_c$ = 12						; size = 4
??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z PROC ; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>, COMDAT
; _this$ = ecx

; 92   :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 10	 sub	 esp, 16			; 00000010H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d e8	 mov	 DWORD PTR _this$[ebp], ecx
  00028	8b 45 e8	 mov	 eax, DWORD PTR _this$[ebp]
  0002b	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00031	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	c7 41 04 00 00
	00 00		 mov	 DWORD PTR [ecx+4], 0

; 93   :         if (raw)

  0003b	83 7d 08 00	 cmp	 DWORD PTR _raw$[ebp], 0
  0003f	74 62		 je	 SHORT $LN4@SmartPtr@6

; 94   :         {
; 95   :             rawPtr = raw;

  00041	8b 55 e8	 mov	 edx, DWORD PTR _this$[ebp]
  00044	8b 45 08	 mov	 eax, DWORD PTR _raw$[ebp]
  00047	89 02		 mov	 DWORD PTR [edx], eax

; 96   :             if (c) acquire(c);

  00049	83 7d 0c 00	 cmp	 DWORD PTR _c$[ebp], 0
  0004d	74 0e		 je	 SHORT $LN2@SmartPtr@6
  0004f	8b 4d 0c	 mov	 ecx, DWORD PTR _c$[ebp]
  00052	51		 push	 ecx
  00053	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  00056	e8 00 00 00 00	 call	 ?acquire@?$SmartPtr@VCSettingGroup@@@@AAEXPAUCounter@@@Z ; SmartPtr<CSettingGroup>::acquire
  0005b	eb 46		 jmp	 SHORT $LN4@SmartPtr@6
$LN2@SmartPtr@6:

; 97   :             else counter = new Counter;

  0005d	6a 04		 push	 4
  0005f	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00064	83 c4 04	 add	 esp, 4
  00067	89 45 ec	 mov	 DWORD PTR $T304947[ebp], eax
  0006a	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00071	83 7d ec 00	 cmp	 DWORD PTR $T304947[ebp], 0
  00075	74 0f		 je	 SHORT $LN6@SmartPtr@6
  00077	6a 01		 push	 1
  00079	8b 4d ec	 mov	 ecx, DWORD PTR $T304947[ebp]
  0007c	e8 00 00 00 00	 call	 ??0Counter@@QAE@I@Z	; Counter::Counter
  00081	89 45 e4	 mov	 DWORD PTR tv78[ebp], eax
  00084	eb 07		 jmp	 SHORT $LN7@SmartPtr@6
$LN6@SmartPtr@6:
  00086	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv78[ebp], 0
$LN7@SmartPtr@6:
  0008d	8b 55 e4	 mov	 edx, DWORD PTR tv78[ebp]
  00090	89 55 f0	 mov	 DWORD PTR $T304946[ebp], edx
  00093	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0009a	8b 45 e8	 mov	 eax, DWORD PTR _this$[ebp]
  0009d	8b 4d f0	 mov	 ecx, DWORD PTR $T304946[ebp]
  000a0	89 48 04	 mov	 DWORD PTR [eax+4], ecx
$LN4@SmartPtr@6:

; 98   :         }
; 99   :     }

  000a3	8b 45 e8	 mov	 eax, DWORD PTR _this$[ebp]
  000a6	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000a9	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000b0	59		 pop	 ecx
  000b1	8b e5		 mov	 esp, ebp
  000b3	5d		 pop	 ebp
  000b4	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z$0:
  00000	8b 45 ec	 mov	 eax, DWORD PTR $T304947[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__ehhandler$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z:
  0000b	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000f	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00012	8b 4a ec	 mov	 ecx, DWORD PTR [edx-20]
  00015	33 c8		 xor	 ecx, eax
  00017	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0001c	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z ENDP ; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
;	COMDAT ??A?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingGroup@@@@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Pos$ = 8						; size = 4
??A?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingGroup@@@@I@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator[], COMDAT
; _this$ = ecx

; 774  : 		{	// subscript mutable sequence

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 775  : 
; 776  :  #if _HAS_ITERATOR_DEBUGGING
; 777  : 		if (size() <= _Pos)
; 778  : 			{
; 779  : 			_DEBUG_ERROR("vector subscript out of range");
; 780  : 			_SCL_SECURE_OUT_OF_RANGE;
; 781  : 			}
; 782  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 783  : 		_SCL_SECURE_VALIDATE_RANGE(_Pos < size());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  0000f	39 45 08	 cmp	 DWORD PTR __Pos$[ebp], eax
  00012	72 05		 jb	 SHORT $LN2@operator@66
  00014	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@66:
  00019	33 c0		 xor	 eax, eax
  0001b	75 fc		 jne	 SHORT $LN2@operator@66

; 784  : 
; 785  : 		return (*(_Myfirst + _Pos));

  0001d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00020	8b 51 0c	 mov	 edx, DWORD PTR [ecx+12]
  00023	8b 45 08	 mov	 eax, DWORD PTR __Pos$[ebp]
  00026	8d 04 c2	 lea	 eax, DWORD PTR [edx+eax*8]

; 786  : 		}

  00029	8b e5		 mov	 esp, ebp
  0002b	5d		 pop	 ebp
  0002c	c2 04 00	 ret	 4
??A?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingGroup@@@@I@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator[]
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
xdata$x	SEGMENT
__unwindtable$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z$0
__ehfuncinfo$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z
_TEXT	SEGMENT
tv74 = -28						; size = 4
$T319362 = -24						; size = 4
$T319361 = -20						; size = 4
__Vptr$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z PROC ; std::_Construct<SmartPtr<CSettingGroup>,SmartPtr<CSettingGroup> >, COMDAT

; 50   : 	{	// construct object at _Ptr with value _Val

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 10	 sub	 esp, 16			; 00000010H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 51   : 	void _FARQ *_Vptr = _Ptr;

  00025	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  00028	89 45 f0	 mov	 DWORD PTR __Vptr$[ebp], eax

; 52   : 	::new (_Vptr) _T1(_Val);

  0002b	8b 4d f0	 mov	 ecx, DWORD PTR __Vptr$[ebp]
  0002e	51		 push	 ecx
  0002f	6a 08		 push	 8
  00031	e8 00 00 00 00	 call	 ??2@YAPAXIPAX@Z		; operator new
  00036	83 c4 08	 add	 esp, 8
  00039	89 45 e8	 mov	 DWORD PTR $T319362[ebp], eax
  0003c	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00043	83 7d e8 00	 cmp	 DWORD PTR $T319362[ebp], 0
  00047	74 11		 je	 SHORT $LN3@Construct@26
  00049	8b 55 0c	 mov	 edx, DWORD PTR __Val$[ebp]
  0004c	52		 push	 edx
  0004d	8b 4d e8	 mov	 ecx, DWORD PTR $T319362[ebp]
  00050	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingGroup@@@@QAE@ABV0@@Z ; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
  00055	89 45 e4	 mov	 DWORD PTR tv74[ebp], eax
  00058	eb 07		 jmp	 SHORT $LN4@Construct@26
$LN3@Construct@26:
  0005a	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv74[ebp], 0
$LN4@Construct@26:
  00061	8b 45 e4	 mov	 eax, DWORD PTR tv74[ebp]
  00064	89 45 ec	 mov	 DWORD PTR $T319361[ebp], eax
  00067	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1

; 53   : 	}

  0006e	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00071	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00078	59		 pop	 ecx
  00079	8b e5		 mov	 esp, ebp
  0007b	5d		 pop	 ebp
  0007c	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z$0:
  00000	8b 45 f0	 mov	 eax, DWORD PTR __Vptr$[ebp]
  00003	50		 push	 eax
  00004	8b 4d e8	 mov	 ecx, DWORD PTR $T319362[ebp]
  00007	51		 push	 ecx
  00008	e8 00 00 00 00	 call	 ??3@YAXPAX0@Z		; operator delete
  0000d	83 c4 08	 add	 esp, 8
  00010	c3		 ret	 0
__ehhandler$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z:
  00011	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00015	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00018	8b 4a ec	 mov	 ecx, DWORD PTR [edx-20]
  0001b	33 c8		 xor	 ecx, eax
  0001d	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00022	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z
  00027	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z ENDP ; std::_Construct<SmartPtr<CSettingGroup>,SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
;	COMDAT ?construct@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@ABV3@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
?construct@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@ABV3@@Z PROC ; std::allocator<SmartPtr<CSettingGroup> >::construct, COMDAT
; _this$ = ecx

; 154  : 		{	// construct object at _Ptr with value _Val

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 155  : 		_Construct(_Ptr, _Val);

  00007	8b 45 0c	 mov	 eax, DWORD PTR __Val$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 08	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  0000e	51		 push	 ecx
  0000f	e8 00 00 00 00	 call	 ??$_Construct@V?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@ABV1@@Z ; std::_Construct<SmartPtr<CSettingGroup>,SmartPtr<CSettingGroup> >
  00014	83 c4 08	 add	 esp, 8

; 156  : 		}

  00017	8b e5		 mov	 esp, ebp
  00019	5d		 pop	 ebp
  0001a	c2 08 00	 ret	 8
?construct@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@ABV3@@Z ENDP ; std::allocator<SmartPtr<CSettingGroup> >::construct
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ??Y?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Off$ = 8						; size = 4
??Y?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z PROC ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=, COMDAT
; _this$ = ecx

; 159  : 		{	// increment by integer

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	56		 push	 esi
  00005	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 160  : 		_SCL_SECURE_VALIDATE(this->_Has_container());

  00008	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	e8 00 00 00 00	 call	 ?_Has_container@_Iterator_base_aux@std@@QBE_NXZ ; std::_Iterator_base_aux::_Has_container
  00010	0f b6 c0	 movzx	 eax, al
  00013	85 c0		 test	 eax, eax
  00015	75 05		 jne	 SHORT $LN7@operator@415
  00017	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN7@operator@415:
  0001c	33 c9		 xor	 ecx, ecx
  0001e	75 fc		 jne	 SHORT $LN7@operator@415

; 161  : 		_SCL_SECURE_VALIDATE_RANGE(

  00020	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00023	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  00026	8b 4d 08	 mov	 ecx, DWORD PTR __Off$[ebp]
  00029	8d 34 c8	 lea	 esi, DWORD PTR [eax+ecx*8]
  0002c	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0002f	e8 00 00 00 00	 call	 ?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Iterator_base_aux::_Getmycont
  00034	3b 70 10	 cmp	 esi, DWORD PTR [eax+16]
  00037	77 19		 ja	 SHORT $LN4@operator@415
  00039	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0003c	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  0003f	8b 4d 08	 mov	 ecx, DWORD PTR __Off$[ebp]
  00042	8d 34 c8	 lea	 esi, DWORD PTR [eax+ecx*8]
  00045	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00048	e8 00 00 00 00	 call	 ?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Iterator_base_aux::_Getmycont
  0004d	3b 70 0c	 cmp	 esi, DWORD PTR [eax+12]
  00050	73 05		 jae	 SHORT $LN2@operator@415
$LN4@operator@415:

; 162  : 			_Myptr + _Off <= ((_Myvec *)(this->_Getmycont()))->_Mylast &&
; 163  : 			_Myptr + _Off >= ((_Myvec *)(this->_Getmycont()))->_Myfirst);

  00052	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@415:
  00057	33 d2		 xor	 edx, edx
  00059	75 fc		 jne	 SHORT $LN2@operator@415

; 164  : 		_Myptr += _Off;

  0005b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0005e	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  00061	8b 55 08	 mov	 edx, DWORD PTR __Off$[ebp]
  00064	8d 04 d1	 lea	 eax, DWORD PTR [ecx+edx*8]
  00067	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0006a	89 41 04	 mov	 DWORD PTR [ecx+4], eax

; 165  : 		return (*this);

  0006d	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]

; 166  : 		}

  00070	5e		 pop	 esi
  00071	8b e5		 mov	 esp, ebp
  00073	5d		 pop	 ebp
  00074	c2 04 00	 ret	 4
??Y?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??Y?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Off$ = 8						; size = 4
??Y?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z PROC ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=, COMDAT
; _this$ = ecx

; 374  : 		{	// increment by integer

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 375  : 		(*(_Mybase *)this) += _Off;

  00007	8b 45 08	 mov	 eax, DWORD PTR __Off$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ??Y?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=

; 376  : 		return (*this);

  00013	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]

; 377  : 		}

  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c2 04 00	 ret	 4
??Y?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z ENDP ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??H?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBE?AV01@H@Z
_TEXT	SEGMENT
_this$ = -12						; size = 4
__Tmp$ = -8						; size = 8
___$ReturnUdt$ = 8					; size = 4
__Off$ = 12						; size = 4
??H?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBE?AV01@H@Z PROC ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+, COMDAT
; _this$ = ecx

; 380  : 		{	// return this + integer

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 0c	 sub	 esp, 12			; 0000000cH
  00006	89 4d f4	 mov	 DWORD PTR _this$[ebp], ecx

; 381  : 		_Myt _Tmp = *this;

  00009	8b 45 f4	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	8b 08		 mov	 ecx, DWORD PTR [eax]
  0000e	8b 50 04	 mov	 edx, DWORD PTR [eax+4]
  00011	89 4d f8	 mov	 DWORD PTR __Tmp$[ebp], ecx
  00014	89 55 fc	 mov	 DWORD PTR __Tmp$[ebp+4], edx

; 382  : 		return (_Tmp += _Off);

  00017	8b 45 0c	 mov	 eax, DWORD PTR __Off$[ebp]
  0001a	50		 push	 eax
  0001b	8d 4d f8	 lea	 ecx, DWORD PTR __Tmp$[ebp]
  0001e	e8 00 00 00 00	 call	 ??Y?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+=
  00023	8b 08		 mov	 ecx, DWORD PTR [eax]
  00025	8b 50 04	 mov	 edx, DWORD PTR [eax+4]
  00028	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
  0002b	89 08		 mov	 DWORD PTR [eax], ecx
  0002d	89 50 04	 mov	 DWORD PTR [eax+4], edx
  00030	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 383  : 		}

  00033	8b e5		 mov	 esp, ebp
  00035	5d		 pop	 ebp
  00036	c2 08 00	 ret	 8
??H?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBE?AV01@H@Z ENDP ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??E?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??E?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ PROC ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++, COMDAT
; _this$ = ecx

; 115  : 		{	// preincrement

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 116  : 		_SCL_SECURE_VALIDATE(this->_Has_container());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?_Has_container@_Iterator_base_aux@std@@QBE_NXZ ; std::_Iterator_base_aux::_Has_container
  0000f	0f b6 c0	 movzx	 eax, al
  00012	85 c0		 test	 eax, eax
  00014	75 05		 jne	 SHORT $LN6@operator@416
  00016	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN6@operator@416:
  0001b	33 c9		 xor	 ecx, ecx
  0001d	75 fc		 jne	 SHORT $LN6@operator@416

; 117  : 		_SCL_SECURE_VALIDATE_RANGE(_Myptr < ((_Myvec *)(this->_Getmycont()))->_Mylast);

  0001f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00022	e8 00 00 00 00	 call	 ?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Iterator_base_aux::_Getmycont
  00027	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0002a	8b 4a 04	 mov	 ecx, DWORD PTR [edx+4]
  0002d	3b 48 10	 cmp	 ecx, DWORD PTR [eax+16]
  00030	72 05		 jb	 SHORT $LN2@operator@416
  00032	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@416:
  00037	33 d2		 xor	 edx, edx
  00039	75 fc		 jne	 SHORT $LN2@operator@416

; 118  : 
; 119  :  #if _HAS_ITERATOR_DEBUGGING
; 120  : 		if (this->_Mycont == 0
; 121  : 			|| ((_Myvec *)this->_Mycont)->_Mylast <= _Myptr)
; 122  : 			_DEBUG_ERROR("vector iterator not incrementable");
; 123  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 124  : 
; 125  : 		++_Myptr;

  0003b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0003e	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  00041	83 c1 08	 add	 ecx, 8
  00044	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00047	89 4a 04	 mov	 DWORD PTR [edx+4], ecx

; 126  : 		return (*this);

  0004a	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]

; 127  : 		}

  0004d	8b e5		 mov	 esp, ebp
  0004f	5d		 pop	 ebp
  00050	c3		 ret	 0
??E?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ENDP ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??D?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEABV?$SmartPtr@VCSettingsHolder@@@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??D?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEABV?$SmartPtr@VCSettingsHolder@@@@XZ PROC ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*, COMDAT
; _this$ = ecx

; 91   : 		{	// return designated object

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 92   : 
; 93   :  #if _HAS_ITERATOR_DEBUGGING
; 94   : 		if (this->_Mycont == 0
; 95   : 			|| _Myptr < ((_Myvec *)this->_Mycont)->_Myfirst
; 96   : 			|| ((_Myvec *)this->_Mycont)->_Mylast <= _Myptr)
; 97   : 			{
; 98   : 			_DEBUG_ERROR("vector iterator not dereferencable");
; 99   : 			_SCL_SECURE_OUT_OF_RANGE;
; 100  : 			}
; 101  :  #else
; 102  :  		_SCL_SECURE_VALIDATE(this->_Has_container());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?_Has_container@_Iterator_base_aux@std@@QBE_NXZ ; std::_Iterator_base_aux::_Has_container
  0000f	0f b6 c0	 movzx	 eax, al
  00012	85 c0		 test	 eax, eax
  00014	75 05		 jne	 SHORT $LN6@operator@417
  00016	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN6@operator@417:
  0001b	33 c9		 xor	 ecx, ecx
  0001d	75 fc		 jne	 SHORT $LN6@operator@417

; 103  : 		_SCL_SECURE_VALIDATE_RANGE(_Myptr < ((_Myvec *)(this->_Getmycont()))->_Mylast);

  0001f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00022	e8 00 00 00 00	 call	 ?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Iterator_base_aux::_Getmycont
  00027	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0002a	8b 4a 04	 mov	 ecx, DWORD PTR [edx+4]
  0002d	3b 48 10	 cmp	 ecx, DWORD PTR [eax+16]
  00030	72 05		 jb	 SHORT $LN2@operator@417
  00032	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@417:
  00037	33 d2		 xor	 edx, edx
  00039	75 fc		 jne	 SHORT $LN2@operator@417

; 104  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 105  : 
; 106  : 		return (*_Myptr);

  0003b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0003e	8b 40 04	 mov	 eax, DWORD PTR [eax+4]

; 107  : 		}

  00041	8b e5		 mov	 esp, ebp
  00043	5d		 pop	 ebp
  00044	c3		 ret	 0
??D?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEABV?$SmartPtr@VCSettingsHolder@@@@XZ ENDP ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??E?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??E?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ PROC ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++, COMDAT
; _this$ = ecx

; 348  : 		{	// preincrement

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 349  : 		++(*(_Mybase *)this);

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??E?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++

; 350  : 		return (*this);

  0000f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]

; 351  : 		}

  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
??E?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ENDP ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ PROC ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*, COMDAT
; _this$ = ecx

; 338  : 		{	// return designated object

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 339  : 		return ((reference)**(_Mybase *)this);

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??D?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEABV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*

; 340  : 		}

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ENDP ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
_TEXT	ENDS
PUBLIC	?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z ; CSettingsMaster::FindMsgHolder
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\settingsmaster.cpp
xdata$x	SEGMENT
__unwindtable$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z$0
__ehfuncinfo$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z
_TEXT	SEGMENT
_this$ = -36						; size = 4
$T319392 = -32						; size = 4
$T319390 = -28						; size = 8
_it$152161 = -20					; size = 8
__$EHRec$ = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
_Message$ = 12						; size = 4
?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z PROC ; CSettingsMaster::FindMsgHolder, COMDAT
; _this$ = ecx

; 415  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 18	 sub	 esp, 24			; 00000018H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d dc	 mov	 DWORD PTR _this$[ebp], ecx
  00028	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR $T319392[ebp], 0

; 416  :     for(Holders::iterator it = m_Holders.begin(); it != m_Holders.end(); ++it)

  0002f	8d 45 ec	 lea	 eax, DWORD PTR _it$152161[ebp]
  00032	50		 push	 eax
  00033	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00036	e8 00 00 00 00	 call	 ?begin@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::begin
  0003b	eb 08		 jmp	 SHORT $LN4@FindMsgHol
$LN3@FindMsgHol:
  0003d	8d 4d ec	 lea	 ecx, DWORD PTR _it$152161[ebp]
  00040	e8 00 00 00 00	 call	 ??E?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++
$LN4@FindMsgHol:
  00045	8d 4d e4	 lea	 ecx, DWORD PTR $T319390[ebp]
  00048	51		 push	 ecx
  00049	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  0004c	e8 00 00 00 00	 call	 ?end@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::end
  00051	50		 push	 eax
  00052	8d 4d ec	 lea	 ecx, DWORD PTR _it$152161[ebp]
  00055	e8 00 00 00 00	 call	 ??9?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBE_NABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator!=
  0005a	0f b6 d0	 movzx	 edx, al
  0005d	85 d2		 test	 edx, edx
  0005f	74 43		 je	 SHORT $LN2@FindMsgHol

; 417  :     {
; 418  :         if(Message == (*it)->GetMessageID())

  00061	8d 4d ec	 lea	 ecx, DWORD PTR _it$152161[ebp]
  00064	e8 00 00 00 00	 call	 ??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
  00069	8b c8		 mov	 ecx, eax
  0006b	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  00070	8b c8		 mov	 ecx, eax
  00072	e8 00 00 00 00	 call	 ?GetMessageID@CSettingsHolder@@QAEJXZ ; CSettingsHolder::GetMessageID
  00077	39 45 0c	 cmp	 DWORD PTR _Message$[ebp], eax
  0007a	75 26		 jne	 SHORT $LN1@FindMsgHol

; 419  :         {
; 420  :             return *it;

  0007c	8d 4d ec	 lea	 ecx, DWORD PTR _it$152161[ebp]
  0007f	e8 00 00 00 00	 call	 ??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
  00084	50		 push	 eax
  00085	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00088	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingsHolder@@@@QAE@ABV0@@Z ; SmartPtr<CSettingsHolder>::SmartPtr<CSettingsHolder>
  0008d	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00094	8b 45 e0	 mov	 eax, DWORD PTR $T319392[ebp]
  00097	83 c8 01	 or	 eax, 1
  0009a	89 45 e0	 mov	 DWORD PTR $T319392[ebp], eax
  0009d	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
  000a0	eb 1d		 jmp	 SHORT $LN5@FindMsgHol
$LN1@FindMsgHol:

; 421  :         }
; 422  :     }

  000a2	eb 99		 jmp	 SHORT $LN3@FindMsgHol
$LN2@FindMsgHol:

; 423  :     return SmartPtr<CSettingsHolder>();

  000a4	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  000a7	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::SmartPtr<CSettingsHolder>
  000ac	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  000b3	8b 4d e0	 mov	 ecx, DWORD PTR $T319392[ebp]
  000b6	83 c9 01	 or	 ecx, 1
  000b9	89 4d e0	 mov	 DWORD PTR $T319392[ebp], ecx
  000bc	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
$LN5@FindMsgHol:

; 424  : }

  000bf	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000c2	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000c9	59		 pop	 ecx
  000ca	8b e5		 mov	 esp, ebp
  000cc	5d		 pop	 ebp
  000cd	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z$0:
  00000	8b 45 e0	 mov	 eax, DWORD PTR $T319392[ebp]
  00003	83 e0 01	 and	 eax, 1
  00006	0f 84 0c 00 00
	00		 je	 $LN8@FindMsgHol
  0000c	83 65 e0 fe	 and	 DWORD PTR $T319392[ebp], -2 ; fffffffeH
  00010	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00013	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
$LN8@FindMsgHol:
  00018	c3		 ret	 0
__ehhandler$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z:
  00019	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001d	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00020	8b 4a e4	 mov	 ecx, DWORD PTR [edx-28]
  00023	33 c8		 xor	 ecx, eax
  00025	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002a	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z
  0002f	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z ENDP ; CSettingsMaster::FindMsgHolder
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
;	COMDAT ?erase@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
__Where$ = 12						; size = 8
?erase@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@@Z PROC ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::erase, COMDAT
; _this$ = ecx

; 1022 : 		{	// erase element at where

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 1023 : 		_STDEXT unchecked_copy(_VEC_ITER_BASE(_Where) + 1, _Mylast,
; 1024 : 			_VEC_ITER_BASE(_Where));

  00007	8b 45 10	 mov	 eax, DWORD PTR __Where$[ebp+4]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  00011	52		 push	 edx
  00012	8b 45 10	 mov	 eax, DWORD PTR __Where$[ebp+4]
  00015	83 c0 08	 add	 eax, 8
  00018	50		 push	 eax
  00019	e8 00 00 00 00	 call	 ??$unchecked_copy@PAV?$SmartPtr@VCSettingsHolder@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCSettingsHolder@@@@PAV1@00@Z ; stdext::unchecked_copy<SmartPtr<CSettingsHolder> *,SmartPtr<CSettingsHolder> *>
  0001e	83 c4 0c	 add	 esp, 12			; 0000000cH

; 1025 : 		_Destroy(_Mylast - 1, _Mylast);

  00021	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00024	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  00027	52		 push	 edx
  00028	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0002b	8b 48 10	 mov	 ecx, DWORD PTR [eax+16]
  0002e	83 e9 08	 sub	 ecx, 8
  00031	51		 push	 ecx
  00032	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00035	e8 00 00 00 00	 call	 ?_Destroy@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingsHolder@@@@0@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::_Destroy

; 1026 : 		--_Mylast;

  0003a	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0003d	8b 42 10	 mov	 eax, DWORD PTR [edx+16]
  00040	83 e8 08	 sub	 eax, 8
  00043	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00046	89 41 10	 mov	 DWORD PTR [ecx+16], eax

; 1027 : 		return (_Make_iter(_Where));

  00049	8b 55 10	 mov	 edx, DWORD PTR __Where$[ebp+4]
  0004c	52		 push	 edx
  0004d	8b 45 0c	 mov	 eax, DWORD PTR __Where$[ebp]
  00050	50		 push	 eax
  00051	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00054	51		 push	 ecx
  00055	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00058	e8 00 00 00 00	 call	 ?_Make_iter@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::_Make_iter
  0005d	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 1028 : 		}

  00060	8b e5		 mov	 esp, ebp
  00062	5d		 pop	 ebp
  00063	c2 0c 00	 ret	 12			; 0000000cH
?erase@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@@Z ENDP ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::erase
_TEXT	ENDS
PUBLIC	?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z ; CSettingsMaster::Unregister
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\settingsmaster.cpp
xdata$x	SEGMENT
__unwindtable$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z$0
__ehfuncinfo$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
_TEXT	SEGMENT
_this$ = -52						; size = 4
$T325143 = -48						; size = 8
$T325142 = -40						; size = 8
$T325141 = -32						; size = 8
$T325140 = -24						; size = 8
_i$151993 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_pHolder$ = 8						; size = 8
?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z PROC ; CSettingsMaster::Unregister, COMDAT
; _this$ = ecx

; 301  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 28	 sub	 esp, 40			; 00000028H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d cc	 mov	 DWORD PTR _this$[ebp], ecx
  00028	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 302  :     for (int i = 0; i < m_Holders.size(); i++)

  0002f	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR _i$151993[ebp], 0
  00036	eb 09		 jmp	 SHORT $LN4@Unregister
$LN3@Unregister:
  00038	8b 45 f0	 mov	 eax, DWORD PTR _i$151993[ebp]
  0003b	83 c0 01	 add	 eax, 1
  0003e	89 45 f0	 mov	 DWORD PTR _i$151993[ebp], eax
$LN4@Unregister:
  00041	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00044	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::size
  00049	39 45 f0	 cmp	 DWORD PTR _i$151993[ebp], eax
  0004c	73 68		 jae	 SHORT $LN2@Unregister

; 303  :     {
; 304  :         if (m_Holders[i] == pHolder)

  0004e	8d 4d 08	 lea	 ecx, DWORD PTR _pHolder$[ebp]
  00051	51		 push	 ecx
  00052	8b 55 f0	 mov	 edx, DWORD PTR _i$151993[ebp]
  00055	52		 push	 edx
  00056	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00059	e8 00 00 00 00	 call	 ??A?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingsHolder@@@@I@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator[]
  0005e	8b c8		 mov	 ecx, eax
  00060	e8 00 00 00 00	 call	 ??8?$SmartPtr@VCSettingsHolder@@@@QAEHABV0@@Z ; SmartPtr<CSettingsHolder>::operator==
  00065	85 c0		 test	 eax, eax
  00067	74 4b		 je	 SHORT $LN1@Unregister

; 305  :         {
; 306  :             m_Holders.erase(m_Holders.begin() + i);

  00069	8b 45 f0	 mov	 eax, DWORD PTR _i$151993[ebp]
  0006c	50		 push	 eax
  0006d	8d 4d d8	 lea	 ecx, DWORD PTR $T325142[ebp]
  00070	51		 push	 ecx
  00071	8d 55 e0	 lea	 edx, DWORD PTR $T325141[ebp]
  00074	52		 push	 edx
  00075	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00078	e8 00 00 00 00	 call	 ?begin@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::begin
  0007d	8b c8		 mov	 ecx, eax
  0007f	e8 00 00 00 00	 call	 ??H?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBE?AV01@H@Z ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator+
  00084	8b 08		 mov	 ecx, DWORD PTR [eax]
  00086	8b 50 04	 mov	 edx, DWORD PTR [eax+4]
  00089	89 4d e8	 mov	 DWORD PTR $T325140[ebp], ecx
  0008c	89 55 ec	 mov	 DWORD PTR $T325140[ebp+4], edx
  0008f	8b 45 ec	 mov	 eax, DWORD PTR $T325140[ebp+4]
  00092	50		 push	 eax
  00093	8b 4d e8	 mov	 ecx, DWORD PTR $T325140[ebp]
  00096	51		 push	 ecx
  00097	8d 55 d0	 lea	 edx, DWORD PTR $T325143[ebp]
  0009a	52		 push	 edx
  0009b	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0009e	e8 00 00 00 00	 call	 ?erase@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::erase

; 307  :             return;

  000a3	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000aa	8d 4d 08	 lea	 ecx, DWORD PTR _pHolder$[ebp]
  000ad	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  000b2	eb 11		 jmp	 SHORT $LN5@Unregister
$LN1@Unregister:

; 308  :         }
; 309  :     }

  000b4	eb 82		 jmp	 SHORT $LN3@Unregister
$LN2@Unregister:

; 310  : }

  000b6	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000bd	8d 4d 08	 lea	 ecx, DWORD PTR _pHolder$[ebp]
  000c0	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
$LN5@Unregister:
  000c5	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000c8	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000cf	59		 pop	 ecx
  000d0	8b e5		 mov	 esp, ebp
  000d2	5d		 pop	 ebp
  000d3	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z$0:
  00000	8d 4d 08	 lea	 ecx, DWORD PTR _pHolder$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__ehhandler$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a d4	 mov	 ecx, DWORD PTR [edx-44]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Unregister@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z ENDP ; CSettingsMaster::Unregister
PUBLIC	?SetChannelName@CSettingsMaster@@QAEXJ@Z	; CSettingsMaster::SetChannelName
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?SetChannelName@CSettingsMaster@@QAEXJ@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?SetChannelName@CSettingsMaster@@QAEXJ@Z$0
__ehfuncinfo$?SetChannelName@CSettingsMaster@@QAEXJ@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?SetChannelName@CSettingsMaster@@QAEXJ@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?SetChannelName@CSettingsMaster@@QAEXJ@Z
_TEXT	SEGMENT
tv76 = -52						; size = 4
tv77 = -48						; size = 4
_this$ = -44						; size = 4
$T332018 = -40						; size = 28
__$EHRec$ = -12						; size = 12
_NewValue$ = 8						; size = 4
?SetChannelName@CSettingsMaster@@QAEXJ@Z PROC		; CSettingsMaster::SetChannelName, COMDAT
; _this$ = ecx

; 325  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?SetChannelName@CSettingsMaster@@QAEXJ@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 28	 sub	 esp, 40			; 00000028H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d d4	 mov	 DWORD PTR _this$[ebp], ecx

; 326  :     if (NewValue >= 0)

  00028	83 7d 08 00	 cmp	 DWORD PTR _NewValue$[ebp], 0
  0002c	7c 3f		 jl	 SHORT $LN2@SetChannel

; 327  :     {
; 328  :         m_ChannelName = Channel_GetName();

  0002e	8d 45 d8	 lea	 eax, DWORD PTR $T332018[ebp]
  00031	50		 push	 eax
  00032	e8 00 00 00 00	 call	 ?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; Channel_GetName
  00037	83 c4 04	 add	 esp, 4
  0003a	89 45 d0	 mov	 DWORD PTR tv77[ebp], eax
  0003d	8b 4d d0	 mov	 ecx, DWORD PTR tv77[ebp]
  00040	89 4d cc	 mov	 DWORD PTR tv76[ebp], ecx
  00043	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0004a	8b 55 cc	 mov	 edx, DWORD PTR tv76[ebp]
  0004d	52		 push	 edx
  0004e	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  00051	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  00057	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
  0005c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00063	8d 4d d8	 lea	 ecx, DWORD PTR $T332018[ebp]
  00066	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >

; 329  :     }
; 330  :     else

  0006b	eb 13		 jmp	 SHORT $LN3@SetChannel
$LN2@SetChannel:

; 331  :     {
; 332  :         m_ChannelName = _T("");

  0006d	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  00072	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  00075	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  0007b	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
$LN3@SetChannel:

; 333  :     }
; 334  : }

  00080	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00083	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0008a	59		 pop	 ecx
  0008b	8b e5		 mov	 esp, ebp
  0008d	5d		 pop	 ebp
  0008e	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?SetChannelName@CSettingsMaster@@QAEXJ@Z$0:
  00000	8d 4d d8	 lea	 ecx, DWORD PTR $T332018[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?SetChannelName@CSettingsMaster@@QAEXJ@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a d4	 mov	 ecx, DWORD PTR [edx-44]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?SetChannelName@CSettingsMaster@@QAEXJ@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?SetChannelName@CSettingsMaster@@QAEXJ@Z ENDP		; CSettingsMaster::SetChannelName
PUBLIC	?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z	; CSettingsMaster::SetSource
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z$0
__ehfuncinfo$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z
_TEXT	SEGMENT
tv79 = -52						; size = 4
tv80 = -48						; size = 4
_this$ = -44						; size = 4
$T332028 = -40						; size = 28
__$EHRec$ = -12						; size = 12
_pSource$ = 8						; size = 4
?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z PROC	; CSettingsMaster::SetSource, COMDAT
; _this$ = ecx

; 313  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 28	 sub	 esp, 40			; 00000028H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d d4	 mov	 DWORD PTR _this$[ebp], ecx

; 314  :     if (pSource != NULL)

  00028	83 7d 08 00	 cmp	 DWORD PTR _pSource$[ebp], 0
  0002c	74 44		 je	 SHORT $LN2@SetSource

; 315  :     {
; 316  :         m_SourceName = pSource->IDString();

  0002e	8d 45 d8	 lea	 eax, DWORD PTR $T332028[ebp]
  00031	50		 push	 eax
  00032	8b 4d 08	 mov	 ecx, DWORD PTR _pSource$[ebp]
  00035	8b 11		 mov	 edx, DWORD PTR [ecx]
  00037	8b 4d 08	 mov	 ecx, DWORD PTR _pSource$[ebp]
  0003a	8b 82 b4 00 00
	00		 mov	 eax, DWORD PTR [edx+180]
  00040	ff d0		 call	 eax
  00042	89 45 d0	 mov	 DWORD PTR tv80[ebp], eax
  00045	8b 4d d0	 mov	 ecx, DWORD PTR tv80[ebp]
  00048	89 4d cc	 mov	 DWORD PTR tv79[ebp], ecx
  0004b	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00052	8b 55 cc	 mov	 edx, DWORD PTR tv79[ebp]
  00055	52		 push	 edx
  00056	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  00059	83 c1 34	 add	 ecx, 52			; 00000034H
  0005c	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
  00061	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00068	8d 4d d8	 lea	 ecx, DWORD PTR $T332028[ebp]
  0006b	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >

; 317  :     }
; 318  :     else

  00070	eb 10		 jmp	 SHORT $LN3@SetSource
$LN2@SetSource:

; 319  :     {
; 320  :         m_SourceName = _T("");

  00072	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  00077	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  0007a	83 c1 34	 add	 ecx, 52			; 00000034H
  0007d	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
$LN3@SetSource:

; 321  :     }
; 322  : }

  00082	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00085	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0008c	59		 pop	 ecx
  0008d	8b e5		 mov	 esp, ebp
  0008f	5d		 pop	 ebp
  00090	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z$0:
  00000	8d 4d d8	 lea	 ecx, DWORD PTR $T332028[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a d4	 mov	 ecx, DWORD PTR [edx-44]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?SetSource@CSettingsMaster@@QAEXPAVCSource@@@Z ENDP	; CSettingsMaster::SetSource
PUBLIC	?MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z ; CSettingsMaster::MakeSubSection
; Function compile flags: /Odtp
;	COMDAT ?MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
_i$151963 = -4						; size = 4
_SubSection$ = 8					; size = 4
_pGroup$ = 12						; size = 4
?MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z PROC ; CSettingsMaster::MakeSubSection, COMDAT
; _this$ = ecx

; 190  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 08	 sub	 esp, 8
  00006	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 191  :     static CSettingGroup* LastGroup = NULL;
; 192  :     static DWORD LastFlags = -1;
; 193  :     if(LastGroup == pGroup)

  00009	a1 00 00 00 00	 mov	 eax, DWORD PTR ?LastGroup@?1??MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z@4PAV5@A
  0000e	3b 45 0c	 cmp	 eax, DWORD PTR _pGroup$[ebp]
  00011	75 05		 jne	 SHORT $LN18@MakeSubSec

; 194  :     {
; 195  :         return;

  00013	e9 82 02 00 00	 jmp	 $LN19@MakeSubSec
$LN18@MakeSubSec:

; 196  :     }
; 197  : 
; 198  :     SubSection = _T("");

  00018	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  0001d	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00020	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=

; 199  : 
; 200  :     // if we are doing have an audio input check to see if
; 201  :     // we have any settings by that
; 202  :     if(m_AudioInputName.length() > 0)

  00025	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00028	83 c1 6c	 add	 ecx, 108		; 0000006cH
  0002b	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  00030	85 c0		 test	 eax, eax
  00032	76 57		 jbe	 SHORT $LN17@MakeSubSec

; 203  :     {
; 204  :         if(pGroup->IsSetByAudioInput() && (SettingsPerChannel_IsPerInput() || SettingsPerChannel_IsPerChannel() || SettingsPerChannel_IsPerFormat()))

  00034	8b 4d 0c	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  00037	e8 00 00 00 00	 call	 ?IsSetByAudioInput@CSettingGroup@@QAEHXZ ; CSettingGroup::IsSetByAudioInput
  0003c	85 c0		 test	 eax, eax
  0003e	74 4b		 je	 SHORT $LN17@MakeSubSec
  00040	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerInput@@YAHXZ ; SettingsPerChannel_IsPerInput
  00045	85 c0		 test	 eax, eax
  00047	75 12		 jne	 SHORT $LN15@MakeSubSec
  00049	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerChannel@@YAHXZ ; SettingsPerChannel_IsPerChannel
  0004e	85 c0		 test	 eax, eax
  00050	75 09		 jne	 SHORT $LN15@MakeSubSec
  00052	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerFormat@@YAHXZ ; SettingsPerChannel_IsPerFormat
  00057	85 c0		 test	 eax, eax
  00059	74 30		 je	 SHORT $LN17@MakeSubSec
$LN15@MakeSubSec:

; 205  :         {
; 206  :             SubSection = m_SourceName;

  0005b	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0005e	83 c1 34	 add	 ecx, 52			; 00000034H
  00061	51		 push	 ecx
  00062	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00065	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=

; 207  :             SubSection += _T("_");

  0006a	68 00 00 00 00	 push	 OFFSET ??_C@_13ENNFDPBH@?$AA_?$AA?$AA@
  0006f	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00072	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=

; 208  :             SubSection += m_AudioInputName;

  00077	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0007a	83 c2 6c	 add	 edx, 108		; 0000006cH
  0007d	52		 push	 edx
  0007e	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00081	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=

; 209  :             return;

  00086	e9 0f 02 00 00	 jmp	 $LN19@MakeSubSec
$LN17@MakeSubSec:

; 210  :         }
; 211  :     }
; 212  : 
; 213  :     // if we are doing a channel
; 214  :     // then we only want the channel name
; 215  :     // if we are doing by channels
; 216  :     if(m_ChannelName.length() > 0)

  0008b	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0008e	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  00094	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  00099	85 c0		 test	 eax, eax
  0009b	0f 86 49 01 00
	00		 jbe	 $LN14@MakeSubSec

; 217  :     {
; 218  :         if(pGroup->IsSetByChannel() && SettingsPerChannel_IsPerChannel())

  000a1	8b 4d 0c	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  000a4	e8 00 00 00 00	 call	 ?IsSetByChannel@CSettingGroup@@QAEHXZ ; CSettingGroup::IsSetByChannel
  000a9	85 c0		 test	 eax, eax
  000ab	0f 84 a7 00 00
	00		 je	 $LN13@MakeSubSec
  000b1	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerChannel@@YAHXZ ; SettingsPerChannel_IsPerChannel
  000b6	85 c0		 test	 eax, eax
  000b8	0f 84 9a 00 00
	00		 je	 $LN13@MakeSubSec

; 219  :         {
; 220  :             SubSection = m_SourceName;

  000be	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  000c1	83 c0 34	 add	 eax, 52			; 00000034H
  000c4	50		 push	 eax
  000c5	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  000c8	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=

; 221  :             SubSection += _T("_");

  000cd	68 00 00 00 00	 push	 OFFSET ??_C@_13ENNFDPBH@?$AA_?$AA?$AA@
  000d2	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  000d5	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=

; 222  :             for(int i(0); i < m_ChannelName.length(); ++i)

  000da	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _i$151963[ebp], 0
  000e1	eb 09		 jmp	 SHORT $LN12@MakeSubSec
$LN11@MakeSubSec:
  000e3	8b 4d fc	 mov	 ecx, DWORD PTR _i$151963[ebp]
  000e6	83 c1 01	 add	 ecx, 1
  000e9	89 4d fc	 mov	 DWORD PTR _i$151963[ebp], ecx
$LN12@MakeSubSec:
  000ec	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  000ef	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  000f5	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  000fa	39 45 fc	 cmp	 DWORD PTR _i$151963[ebp], eax
  000fd	73 54		 jae	 SHORT $LN10@MakeSubSec

; 223  :             {
; 224  :                 if(m_ChannelName[i] != '[' && m_ChannelName[i] != ']')

  000ff	8b 55 fc	 mov	 edx, DWORD PTR _i$151963[ebp]
  00102	52		 push	 edx
  00103	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00106	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  0010c	e8 00 00 00 00	 call	 ??A?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAA_WI@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator[]
  00111	0f b7 00	 movzx	 eax, WORD PTR [eax]
  00114	83 f8 5b	 cmp	 eax, 91			; 0000005bH
  00117	74 38		 je	 SHORT $LN9@MakeSubSec
  00119	8b 4d fc	 mov	 ecx, DWORD PTR _i$151963[ebp]
  0011c	51		 push	 ecx
  0011d	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00120	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  00126	e8 00 00 00 00	 call	 ??A?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAA_WI@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator[]
  0012b	0f b7 10	 movzx	 edx, WORD PTR [eax]
  0012e	83 fa 5d	 cmp	 edx, 93			; 0000005dH
  00131	74 1e		 je	 SHORT $LN9@MakeSubSec

; 225  :                 {
; 226  :                     SubSection += m_ChannelName[i];

  00133	8b 45 fc	 mov	 eax, DWORD PTR _i$151963[ebp]
  00136	50		 push	 eax
  00137	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0013a	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  00140	e8 00 00 00 00	 call	 ??A?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAA_WI@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator[]
  00145	0f b7 08	 movzx	 ecx, WORD PTR [eax]
  00148	51		 push	 ecx
  00149	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  0014c	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=
$LN9@MakeSubSec:

; 227  :                 }
; 228  :             }

  00151	eb 90		 jmp	 SHORT $LN11@MakeSubSec
$LN10@MakeSubSec:

; 229  :             return;

  00153	e9 42 01 00 00	 jmp	 $LN19@MakeSubSec
$LN13@MakeSubSec:

; 230  :         }
; 231  :         if(pGroup->IsSetByInput() && SettingsPerChannel_IsPerInput())

  00158	8b 4d 0c	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  0015b	e8 00 00 00 00	 call	 ?IsSetByInput@CSettingGroup@@QAEHXZ ; CSettingGroup::IsSetByInput
  00160	85 c0		 test	 eax, eax
  00162	74 32		 je	 SHORT $LN8@MakeSubSec
  00164	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerInput@@YAHXZ ; SettingsPerChannel_IsPerInput
  00169	85 c0		 test	 eax, eax
  0016b	74 29		 je	 SHORT $LN8@MakeSubSec

; 232  :         {
; 233  :             SubSection = m_SourceName;

  0016d	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00170	83 c2 34	 add	 edx, 52			; 00000034H
  00173	52		 push	 edx
  00174	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00177	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=

; 234  :             SubSection += _T("_");

  0017c	68 00 00 00 00	 push	 OFFSET ??_C@_13ENNFDPBH@?$AA_?$AA?$AA@
  00181	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00184	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=

; 235  :             SubSection += _T("Tuner");

  00189	68 00 00 00 00	 push	 OFFSET ??_C@_1M@PHFJFCEI@?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?$AA@
  0018e	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00191	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=
$LN8@MakeSubSec:

; 236  :         }
; 237  :         if(pGroup->IsSetByFormat() && SettingsPerChannel_IsPerFormat())

  00196	8b 4d 0c	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  00199	e8 00 00 00 00	 call	 ?IsSetByFormat@CSettingGroup@@QAEHXZ ; CSettingGroup::IsSetByFormat
  0019e	85 c0		 test	 eax, eax
  001a0	74 43		 je	 SHORT $LN7@MakeSubSec
  001a2	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerFormat@@YAHXZ ; SettingsPerChannel_IsPerFormat
  001a7	85 c0		 test	 eax, eax
  001a9	74 3a		 je	 SHORT $LN7@MakeSubSec

; 238  :         {
; 239  :             if(SubSection.length() == 0)

  001ab	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  001ae	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  001b3	85 c0		 test	 eax, eax
  001b5	75 0f		 jne	 SHORT $LN6@MakeSubSec

; 240  :             {
; 241  :                 SubSection = m_SourceName;

  001b7	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  001ba	83 c0 34	 add	 eax, 52			; 00000034H
  001bd	50		 push	 eax
  001be	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  001c1	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
$LN6@MakeSubSec:

; 242  :             }
; 243  :             SubSection += _T("_");

  001c6	68 00 00 00 00	 push	 OFFSET ??_C@_13ENNFDPBH@?$AA_?$AA?$AA@
  001cb	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  001ce	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=

; 244  :             SubSection += m_VideoFormatName;

  001d3	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  001d6	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  001dc	51		 push	 ecx
  001dd	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  001e0	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=
$LN7@MakeSubSec:

; 245  :         }
; 246  :         return;

  001e5	e9 b0 00 00 00	 jmp	 $LN19@MakeSubSec
$LN14@MakeSubSec:

; 247  :     }
; 248  : 
; 249  :     if(m_VideoInputName.length() > 0)

  001ea	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  001ed	83 c1 50	 add	 ecx, 80			; 00000050H
  001f0	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  001f5	85 c0		 test	 eax, eax
  001f7	76 40		 jbe	 SHORT $LN5@MakeSubSec

; 250  :     {
; 251  :         if(pGroup->IsSetByInput() && SettingsPerChannel_IsPerInput())

  001f9	8b 4d 0c	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  001fc	e8 00 00 00 00	 call	 ?IsSetByInput@CSettingGroup@@QAEHXZ ; CSettingGroup::IsSetByInput
  00201	85 c0		 test	 eax, eax
  00203	74 34		 je	 SHORT $LN5@MakeSubSec
  00205	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerInput@@YAHXZ ; SettingsPerChannel_IsPerInput
  0020a	85 c0		 test	 eax, eax
  0020c	74 2b		 je	 SHORT $LN5@MakeSubSec

; 252  :         {
; 253  :             SubSection = m_SourceName;

  0020e	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00211	83 c2 34	 add	 edx, 52			; 00000034H
  00214	52		 push	 edx
  00215	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00218	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=

; 254  :             SubSection += _T("_");

  0021d	68 00 00 00 00	 push	 OFFSET ??_C@_13ENNFDPBH@?$AA_?$AA?$AA@
  00222	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00225	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=

; 255  :             SubSection += m_VideoInputName;

  0022a	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0022d	83 c0 50	 add	 eax, 80			; 00000050H
  00230	50		 push	 eax
  00231	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00234	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=
$LN5@MakeSubSec:

; 256  :         }
; 257  :     }
; 258  : 
; 259  :     if(m_VideoFormatName.length() > 0)

  00239	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0023c	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  00242	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  00247	85 c0		 test	 eax, eax
  00249	76 4f		 jbe	 SHORT $LN19@MakeSubSec

; 260  :     {
; 261  :         if(pGroup->IsSetByFormat() && SettingsPerChannel_IsPerFormat())

  0024b	8b 4d 0c	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  0024e	e8 00 00 00 00	 call	 ?IsSetByFormat@CSettingGroup@@QAEHXZ ; CSettingGroup::IsSetByFormat
  00253	85 c0		 test	 eax, eax
  00255	74 43		 je	 SHORT $LN19@MakeSubSec
  00257	e8 00 00 00 00	 call	 ?SettingsPerChannel_IsPerFormat@@YAHXZ ; SettingsPerChannel_IsPerFormat
  0025c	85 c0		 test	 eax, eax
  0025e	74 3a		 je	 SHORT $LN19@MakeSubSec

; 262  :         {
; 263  :             if(SubSection.length() == 0)

  00260	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00263	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  00268	85 c0		 test	 eax, eax
  0026a	75 0f		 jne	 SHORT $LN1@MakeSubSec

; 264  :             {
; 265  :                 SubSection = m_SourceName;

  0026c	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0026f	83 c1 34	 add	 ecx, 52			; 00000034H
  00272	51		 push	 ecx
  00273	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00276	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
$LN1@MakeSubSec:

; 266  :             }
; 267  :             SubSection += _T("_");

  0027b	68 00 00 00 00	 push	 OFFSET ??_C@_13ENNFDPBH@?$AA_?$AA?$AA@
  00280	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00283	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=

; 268  :             SubSection += m_VideoFormatName;

  00288	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0028b	81 c2 88 00 00
	00		 add	 edx, 136		; 00000088H
  00291	52		 push	 edx
  00292	8b 4d 08	 mov	 ecx, DWORD PTR _SubSection$[ebp]
  00295	e8 00 00 00 00	 call	 ??Y?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator+=
$LN19@MakeSubSec:

; 269  :         }
; 270  :     }
; 271  : }

  0029a	8b e5		 mov	 esp, ebp
  0029c	5d		 pop	 ebp
  0029d	c2 08 00	 ret	 8
?MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z ENDP ; CSettingsMaster::MakeSubSection
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
xdata$x	SEGMENT
__unwindtable$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ$0
__ehfuncinfo$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ
_TEXT	SEGMENT
$T337088 = -80						; size = 28
$T337087 = -52						; size = 40
__$EHRec$ = -12						; size = 12
?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Xlen, COMDAT

; 1257 : 		{	// report a length_error

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 44	 sub	 esp, 68			; 00000044H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 1258 : 		_THROW(length_error, "vector<T> too long");

  00025	68 00 00 00 00	 push	 OFFSET ??_C@_0BD@OLBABOEK@vector?$DMT?$DO?5too?5long?$AA@
  0002a	8d 4d b0	 lea	 ecx, DWORD PTR $T337088[ebp]
  0002d	e8 00 00 00 00	 call	 ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
  00032	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00039	8d 45 b0	 lea	 eax, DWORD PTR $T337088[ebp]
  0003c	50		 push	 eax
  0003d	8d 4d cc	 lea	 ecx, DWORD PTR $T337087[ebp]
  00040	e8 00 00 00 00	 call	 ??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::length_error::length_error
  00045	68 00 00 00 00	 push	 OFFSET __TI3?AVlength_error@std@@
  0004a	8d 4d cc	 lea	 ecx, DWORD PTR $T337087[ebp]
  0004d	51		 push	 ecx
  0004e	e8 00 00 00 00	 call	 __CxxThrowException@8
  00053	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0005a	8d 4d b0	 lea	 ecx, DWORD PTR $T337088[ebp]
  0005d	e8 00 00 00 00	 call	 ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
$LN2@Xlen@12:

; 1259 : 		}

  00062	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00065	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0006c	59		 pop	 ecx
  0006d	8b e5		 mov	 esp, ebp
  0006f	5d		 pop	 ebp
  00070	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ$0:
  00000	8d 4d b0	 lea	 ecx, DWORD PTR $T337088[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__ehhandler$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a b8	 mov	 ecx, DWORD PTR [edx-72]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Xlen
; Function compile flags: /Odtp
;	COMDAT ?_Buy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE_NI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Capacity$ = 8						; size = 4
?_Buy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE_NI@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Buy, COMDAT
; _this$ = ecx

; 1107 : 		{	// allocate array with _Capacity elements

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 1108 : 		_Myfirst = 0, _Mylast = 0, _Myend = 0;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	c7 40 0c 00 00
	00 00		 mov	 DWORD PTR [eax+12], 0
  00011	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00014	c7 41 10 00 00
	00 00		 mov	 DWORD PTR [ecx+16], 0
  0001b	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0001e	c7 42 14 00 00
	00 00		 mov	 DWORD PTR [edx+20], 0

; 1109 : 		if (_Capacity == 0)

  00025	83 7d 08 00	 cmp	 DWORD PTR __Capacity$[ebp], 0
  00029	75 06		 jne	 SHORT $LN4@Buy@12

; 1110 : 			return (false);

  0002b	32 c0		 xor	 al, al
  0002d	eb 4b		 jmp	 SHORT $LN5@Buy@12
  0002f	eb 47		 jmp	 SHORT $LN3@Buy@12
$LN4@Buy@12:

; 1111 : 		else if (max_size() < _Capacity)

  00031	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	e8 00 00 00 00	 call	 ?max_size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::max_size
  00039	3b 45 08	 cmp	 eax, DWORD PTR __Capacity$[ebp]
  0003c	73 07		 jae	 SHORT $LN2@Buy@12

; 1112 : 			_Xlen();	// result too long

  0003e	e8 00 00 00 00	 call	 ?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Xlen

; 1113 : 		else

  00043	eb 33		 jmp	 SHORT $LN3@Buy@12
$LN2@Buy@12:

; 1114 : 			{	// nonempty array, allocate storage
; 1115 : 			_Myfirst = this->_Alval.allocate(_Capacity);

  00045	8b 45 08	 mov	 eax, DWORD PTR __Capacity$[ebp]
  00048	50		 push	 eax
  00049	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0004c	83 c1 08	 add	 ecx, 8
  0004f	e8 00 00 00 00	 call	 ?allocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEPAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::allocator<SmartPtr<CSettingGroup> >::allocate
  00054	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00057	89 41 0c	 mov	 DWORD PTR [ecx+12], eax

; 1116 : 			_Mylast = _Myfirst;

  0005a	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0005d	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00060	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00063	89 4a 10	 mov	 DWORD PTR [edx+16], ecx

; 1117 : 			_Myend = _Myfirst + _Capacity;

  00066	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00069	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  0006c	8b 4d 08	 mov	 ecx, DWORD PTR __Capacity$[ebp]
  0006f	8d 14 c8	 lea	 edx, DWORD PTR [eax+ecx*8]
  00072	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00075	89 50 14	 mov	 DWORD PTR [eax+20], edx
$LN3@Buy@12:

; 1118 : 			}
; 1119 : 		return (true);

  00078	b0 01		 mov	 al, 1
$LN5@Buy@12:

; 1120 : 		}

  0007a	8b e5		 mov	 esp, ebp
  0007c	5d		 pop	 ebp
  0007d	c2 04 00	 ret	 4
?_Buy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE_NI@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Buy
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ$0
__ehfuncinfo$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -20						; size = 4
$T337100 = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx

; 470  : 		{	// construct empty vector

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 08	 sub	 esp, 8
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d ec	 mov	 DWORD PTR _this$[ebp], ecx
  00028	51		 push	 ecx
  00029	8b cc		 mov	 ecx, esp
  0002b	89 65 f0	 mov	 DWORD PTR $T337100[ebp], esp
  0002e	e8 00 00 00 00	 call	 ??0?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAE@XZ ; std::allocator<SmartPtr<CSettingGroup> >::allocator<SmartPtr<CSettingGroup> >
  00033	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00036	e8 00 00 00 00	 call	 ??0?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@1@@Z ; std::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Vector_val<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
  0003b	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 471  : 		_Buy(0);

  00042	6a 00		 push	 0
  00044	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00047	e8 00 00 00 00	 call	 ?_Buy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAE_NI@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Buy

; 472  : 		}

  0004c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00053	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  00056	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00059	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00060	59		 pop	 ecx
  00061	8b e5		 mov	 esp, ebp
  00063	5d		 pop	 ebp
  00064	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ$0:
  00000	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
__ehhandler$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f4	 mov	 ecx, DWORD PTR [edx-12]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?SetVideoFormat@CSettingsMaster@@QAEXJ@Z	; CSettingsMaster::SetVideoFormat
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\settingsmaster.cpp
xdata$x	SEGMENT
__unwindtable$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z$1
__ehfuncinfo$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?SetVideoFormat@CSettingsMaster@@QAEXJ@Z
_TEXT	SEGMENT
tv85 = -80						; size = 4
tv71 = -76						; size = 4
_this$ = -72						; size = 4
$T340946 = -68						; size = 28
$T340945 = -40						; size = 28
__$EHRec$ = -12						; size = 12
_NewValue$ = 8						; size = 4
?SetVideoFormat@CSettingsMaster@@QAEXJ@Z PROC		; CSettingsMaster::SetVideoFormat, COMDAT
; _this$ = ecx

; 361  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 44	 sub	 esp, 68			; 00000044H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d b8	 mov	 DWORD PTR _this$[ebp], ecx

; 362  :     if (NewValue >= 0 && NewValue < VIDEOFORMAT_LASTONE)

  00028	83 7d 08 00	 cmp	 DWORD PTR _NewValue$[ebp], 0
  0002c	7c 6c		 jl	 SHORT $LN2@SetVideoFo@2
  0002e	83 7d 08 1a	 cmp	 DWORD PTR _NewValue$[ebp], 26 ; 0000001aH
  00032	7d 66		 jge	 SHORT $LN2@SetVideoFo@2

; 363  :     {
; 364  :         m_VideoFormatName = MBCSToTString(VideoFormatSaveNames[NewValue]);

  00034	8b 45 08	 mov	 eax, DWORD PTR _NewValue$[ebp]
  00037	8b 0c 85 00 00
	00 00		 mov	 ecx, DWORD PTR ?VideoFormatSaveNames@@3PAPBDA[eax*4]
  0003e	51		 push	 ecx
  0003f	8d 4d d8	 lea	 ecx, DWORD PTR $T340945[ebp]
  00042	e8 00 00 00 00	 call	 ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
  00047	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0004e	8d 55 d8	 lea	 edx, DWORD PTR $T340945[ebp]
  00051	52		 push	 edx
  00052	8d 45 bc	 lea	 eax, DWORD PTR $T340946[ebp]
  00055	50		 push	 eax
  00056	e8 00 00 00 00	 call	 ?MBCSToUnicode@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z ; MBCSToUnicode
  0005b	83 c4 08	 add	 esp, 8
  0005e	89 45 b4	 mov	 DWORD PTR tv71[ebp], eax
  00061	8b 4d b4	 mov	 ecx, DWORD PTR tv71[ebp]
  00064	89 4d b0	 mov	 DWORD PTR tv85[ebp], ecx
  00067	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0006b	8b 55 b0	 mov	 edx, DWORD PTR tv85[ebp]
  0006e	52		 push	 edx
  0006f	8b 4d b8	 mov	 ecx, DWORD PTR _this$[ebp]
  00072	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  00078	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
  0007d	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00081	8d 4d bc	 lea	 ecx, DWORD PTR $T340946[ebp]
  00084	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00089	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00090	8d 4d d8	 lea	 ecx, DWORD PTR $T340945[ebp]
  00093	e8 00 00 00 00	 call	 ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >

; 365  :     }
; 366  :     else

  00098	eb 13		 jmp	 SHORT $LN3@SetVideoFo@2
$LN2@SetVideoFo@2:

; 367  :     {
; 368  :         m_VideoFormatName = _T("");

  0009a	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  0009f	8b 4d b8	 mov	 ecx, DWORD PTR _this$[ebp]
  000a2	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  000a8	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
$LN3@SetVideoFo@2:

; 369  :     }
; 370  : //LOG(1, _T("m_VideoFormatName %d (%d) ===> %s"), NewValue, VIDEOFORMAT_LASTONE, m_VideoFormatName.c_str());
; 371  : }

  000ad	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000b0	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000b7	59		 pop	 ecx
  000b8	8b e5		 mov	 esp, ebp
  000ba	5d		 pop	 ebp
  000bb	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z$0:
  00000	8d 4d d8	 lea	 ecx, DWORD PTR $T340945[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z$1:
  00008	8d 4d bc	 lea	 ecx, DWORD PTR $T340946[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a b8	 mov	 ecx, DWORD PTR [edx-72]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?SetVideoFormat@CSettingsMaster@@QAEXJ@Z
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?SetVideoFormat@CSettingsMaster@@QAEXJ@Z ENDP		; CSettingsMaster::SetVideoFormat
PUBLIC	?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z ; CSettingsMaster::Register
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z$0
__ehfuncinfo$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_pHolder$ = 8						; size = 8
?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z PROC ; CSettingsMaster::Register, COMDAT
; _this$ = ecx

; 295  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 296  :     //Add to holder list
; 297  :     m_Holders.push_back(pHolder);

  0002d	8d 45 08	 lea	 eax, DWORD PTR _pHolder$[ebp]
  00030	50		 push	 eax
  00031	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEXABV?$SmartPtr@VCSettingsHolder@@@@@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::push_back

; 298  : }

  00039	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00040	8d 4d 08	 lea	 ecx, DWORD PTR _pHolder$[ebp]
  00043	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  00048	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004b	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00052	59		 pop	 ecx
  00053	8b e5		 mov	 esp, ebp
  00055	5d		 pop	 ebp
  00056	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z$0:
  00000	8d 4d 08	 lea	 ecx, DWORD PTR _pHolder$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__ehhandler$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z ENDP ; CSettingsMaster::Register
PUBLIC	?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ ; CSettingsMaster::GetSettingsPage
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$3
	DD	00H
	DD	FLAT:__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$1
	DD	02H
	DD	FLAT:__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$2
__ehfuncinfo$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ DD 019930522H
	DD	04H
	DD	FLAT:__unwindtable$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ
_TEXT	SEGMENT
tv145 = -56						; size = 4
tv65 = -52						; size = 4
tv76 = -48						; size = 4
_this$ = -44						; size = 4
$T343430 = -40						; size = 4
$T343425 = -36						; size = 4
$T343422 = -32						; size = 4
$T343421 = -28						; size = 4
_i$152139 = -24						; size = 4
_Holder$ = -20						; size = 8
__$EHRec$ = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ PROC ; CSettingsMaster::GetSettingsPage, COMDAT
; _this$ = ecx

; 388  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 2c	 sub	 esp, 44			; 0000002cH
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d d4	 mov	 DWORD PTR _this$[ebp], ecx
  00028	c7 45 d8 00 00
	00 00		 mov	 DWORD PTR $T343430[ebp], 0

; 389  :     SmartPtr<CSettingsHolder> Holder(new CSettingsHolder);

  0002f	6a 40		 push	 64			; 00000040H
  00031	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00036	83 c4 04	 add	 esp, 4
  00039	89 45 e0	 mov	 DWORD PTR $T343422[ebp], eax
  0003c	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  00043	83 7d e0 00	 cmp	 DWORD PTR $T343422[ebp], 0
  00047	74 11		 je	 SHORT $LN6@GetSetting@8
  00049	6a 00		 push	 0
  0004b	6a 00		 push	 0
  0004d	8b 4d e0	 mov	 ecx, DWORD PTR $T343422[ebp]
  00050	e8 00 00 00 00	 call	 ??0CSettingsHolder@@QAE@JI@Z ; CSettingsHolder::CSettingsHolder
  00055	89 45 d0	 mov	 DWORD PTR tv76[ebp], eax
  00058	eb 07		 jmp	 SHORT $LN7@GetSetting@8
$LN6@GetSetting@8:
  0005a	c7 45 d0 00 00
	00 00		 mov	 DWORD PTR tv76[ebp], 0
$LN7@GetSetting@8:
  00061	8b 45 d0	 mov	 eax, DWORD PTR tv76[ebp]
  00064	89 45 e4	 mov	 DWORD PTR $T343421[ebp], eax
  00067	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  0006b	6a 00		 push	 0
  0006d	8b 4d e4	 mov	 ecx, DWORD PTR $T343421[ebp]
  00070	51		 push	 ecx
  00071	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  00074	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingsHolder@@@@QAE@PAVCSettingsHolder@@PAUCounter@@@Z ; SmartPtr<CSettingsHolder>::SmartPtr<CSettingsHolder>
  00079	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 2

; 390  : 
; 391  :     for (int i = 0; i < m_SettingsGroups.size(); i++)

  00080	c7 45 e8 00 00
	00 00		 mov	 DWORD PTR _i$152139[ebp], 0
  00087	eb 09		 jmp	 SHORT $LN3@GetSetting@8
$LN2@GetSetting@8:
  00089	8b 55 e8	 mov	 edx, DWORD PTR _i$152139[ebp]
  0008c	83 c2 01	 add	 edx, 1
  0008f	89 55 e8	 mov	 DWORD PTR _i$152139[ebp], edx
$LN3@GetSetting@8:
  00092	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  00095	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  0009b	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  000a0	39 45 e8	 cmp	 DWORD PTR _i$152139[ebp], eax
  000a3	73 4b		 jae	 SHORT $LN1@GetSetting@8

; 392  :     {
; 393  :         Holder->AddSetting(m_SettingsGroups[i]->GetIsActiveSetting());

  000a5	83 ec 08	 sub	 esp, 8
  000a8	8b c4		 mov	 eax, esp
  000aa	89 65 dc	 mov	 DWORD PTR $T343425[ebp], esp
  000ad	50		 push	 eax
  000ae	8b 4d e8	 mov	 ecx, DWORD PTR _i$152139[ebp]
  000b1	51		 push	 ecx
  000b2	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  000b5	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  000bb	e8 00 00 00 00	 call	 ??A?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator[]
  000c0	8b c8		 mov	 ecx, eax
  000c2	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ; SmartPtr<CSettingGroup>::operator->
  000c7	8b c8		 mov	 ecx, eax
  000c9	e8 00 00 00 00	 call	 ?GetIsActiveSetting@CSettingGroup@@QAE?AV?$SmartPtr@VCSimpleSetting@@@@XZ ; CSettingGroup::GetIsActiveSetting
  000ce	89 45 cc	 mov	 DWORD PTR tv65[ebp], eax
  000d1	8b 55 cc	 mov	 edx, DWORD PTR tv65[ebp]
  000d4	89 55 c8	 mov	 DWORD PTR tv145[ebp], edx
  000d7	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  000db	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  000de	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  000e3	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  000e7	8b c8		 mov	 ecx, eax
  000e9	e8 00 00 00 00	 call	 ?AddSetting@CSettingsHolder@@QAEXV?$SmartPtr@VCSimpleSetting@@@@@Z ; CSettingsHolder::AddSetting

; 394  :     }

  000ee	eb 99		 jmp	 SHORT $LN2@GetSetting@8
$LN1@GetSetting@8:

; 395  :     return Holder;

  000f0	8d 45 ec	 lea	 eax, DWORD PTR _Holder$[ebp]
  000f3	50		 push	 eax
  000f4	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  000f7	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingsHolder@@@@QAE@ABV0@@Z ; SmartPtr<CSettingsHolder>::SmartPtr<CSettingsHolder>
  000fc	8b 4d d8	 mov	 ecx, DWORD PTR $T343430[ebp]
  000ff	83 c9 01	 or	 ecx, 1
  00102	89 4d d8	 mov	 DWORD PTR $T343430[ebp], ecx
  00105	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00109	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0010c	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  00111	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 396  : }

  00114	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00117	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0011e	59		 pop	 ecx
  0011f	8b e5		 mov	 esp, ebp
  00121	5d		 pop	 ebp
  00122	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$0:
  00000	8b 45 e0	 mov	 eax, DWORD PTR $T343422[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$1:
  0000b	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0000e	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$2:
  00013	8b 4d dc	 mov	 ecx, DWORD PTR $T343425[ebp]
  00016	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
__unwindfunclet$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ$3:
  0001b	8b 45 d8	 mov	 eax, DWORD PTR $T343430[ebp]
  0001e	83 e0 01	 and	 eax, 1
  00021	0f 84 0c 00 00
	00		 je	 $LN12@GetSetting@8
  00027	83 65 d8 fe	 and	 DWORD PTR $T343430[ebp], -2 ; fffffffeH
  0002b	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  0002e	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
$LN12@GetSetting@8:
  00033	c3		 ret	 0
__ehhandler$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ:
  00034	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00038	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0003b	8b 4a d0	 mov	 ecx, DWORD PTR [edx-48]
  0003e	33 c8		 xor	 ecx, eax
  00040	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00045	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ
  0004a	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?GetSettingsPage@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@XZ ENDP ; CSettingsMaster::GetSettingsPage
PUBLIC	?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$2
	DD	01H
	DD	FLAT:__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$3
__ehfuncinfo$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z DD 019930522H
	DD	04H
	DD	FLAT:__unwindtable$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z
_TEXT	SEGMENT
tv153 = -68						; size = 4
tv155 = -64						; size = 4
tv137 = -60						; size = 4
tv76 = -56						; size = 4
_this$ = -52						; size = 4
$T343446 = -48						; size = 4
$T343445 = -44						; size = 4
$T343444 = -40						; size = 4
$T343441 = -36						; size = 4
$T343440 = -32						; size = 4
_Holder$ = -28						; size = 8
_i$ = -20						; size = 4
_NewSetting$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_MessageIdRoot$ = 8					; size = 4
_GetSettingFunction$ = 12				; size = 4
?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z PROC ; CSettingsMaster::AddSettings, COMDAT
; _this$ = ecx

; 107  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 38	 sub	 esp, 56			; 00000038H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d cc	 mov	 DWORD PTR _this$[ebp], ecx

; 108  :     SmartPtr<CSettingsHolder> Holder(new CSettingsHolder(MessageIdRoot));

  00028	6a 40		 push	 64			; 00000040H
  0002a	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0002f	83 c4 04	 add	 esp, 4
  00032	89 45 dc	 mov	 DWORD PTR $T343441[ebp], eax
  00035	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0003c	83 7d dc 00	 cmp	 DWORD PTR $T343441[ebp], 0
  00040	74 13		 je	 SHORT $LN5@AddSetting@2
  00042	6a 00		 push	 0
  00044	8b 45 08	 mov	 eax, DWORD PTR _MessageIdRoot$[ebp]
  00047	50		 push	 eax
  00048	8b 4d dc	 mov	 ecx, DWORD PTR $T343441[ebp]
  0004b	e8 00 00 00 00	 call	 ??0CSettingsHolder@@QAE@JI@Z ; CSettingsHolder::CSettingsHolder
  00050	89 45 c8	 mov	 DWORD PTR tv76[ebp], eax
  00053	eb 07		 jmp	 SHORT $LN6@AddSetting@2
$LN5@AddSetting@2:
  00055	c7 45 c8 00 00
	00 00		 mov	 DWORD PTR tv76[ebp], 0
$LN6@AddSetting@2:
  0005c	8b 4d c8	 mov	 ecx, DWORD PTR tv76[ebp]
  0005f	89 4d e0	 mov	 DWORD PTR $T343440[ebp], ecx
  00062	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00069	6a 00		 push	 0
  0006b	8b 55 e0	 mov	 edx, DWORD PTR $T343440[ebp]
  0006e	52		 push	 edx
  0006f	8d 4d e4	 lea	 ecx, DWORD PTR _Holder$[ebp]
  00072	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingsHolder@@@@QAE@PAVCSettingsHolder@@PAUCounter@@@Z ; SmartPtr<CSettingsHolder>::SmartPtr<CSettingsHolder>
  00077	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1

; 109  :     int i(0);

  0007e	c7 45 ec 00 00
	00 00		 mov	 DWORD PTR _i$[ebp], 0

; 110  : 
; 111  :     SETTING* NewSetting = GetSettingFunction(i);

  00085	8b 45 ec	 mov	 eax, DWORD PTR _i$[ebp]
  00088	50		 push	 eax
  00089	ff 55 0c	 call	 DWORD PTR _GetSettingFunction$[ebp]
  0008c	83 c4 04	 add	 esp, 4
  0008f	89 45 f0	 mov	 DWORD PTR _NewSetting$[ebp], eax
$LN2@AddSetting@2:

; 112  :     while(NewSetting != NULL)

  00092	83 7d f0 00	 cmp	 DWORD PTR _NewSetting$[ebp], 0
  00096	0f 84 8c 00 00
	00		 je	 $LN1@AddSetting@2

; 113  :     {
; 114  :         Holder->AddSetting(SmartPtr<CSimpleSetting>(new CSettingWrapper(NewSetting)));

  0009c	68 a0 00 00 00	 push	 160			; 000000a0H
  000a1	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  000a6	83 c4 04	 add	 esp, 4
  000a9	89 45 d0	 mov	 DWORD PTR $T343446[ebp], eax
  000ac	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  000b0	83 7d d0 00	 cmp	 DWORD PTR $T343446[ebp], 0
  000b4	74 13		 je	 SHORT $LN7@AddSetting@2
  000b6	6a 00		 push	 0
  000b8	8b 4d f0	 mov	 ecx, DWORD PTR _NewSetting$[ebp]
  000bb	51		 push	 ecx
  000bc	8b 4d d0	 mov	 ecx, DWORD PTR $T343446[ebp]
  000bf	e8 00 00 00 00	 call	 ??0CSettingWrapper@@QAE@PAUSETTING@@PAVCSettingGroup@@@Z ; CSettingWrapper::CSettingWrapper
  000c4	89 45 c4	 mov	 DWORD PTR tv137[ebp], eax
  000c7	eb 07		 jmp	 SHORT $LN8@AddSetting@2
$LN7@AddSetting@2:
  000c9	c7 45 c4 00 00
	00 00		 mov	 DWORD PTR tv137[ebp], 0
$LN8@AddSetting@2:
  000d0	8b 55 c4	 mov	 edx, DWORD PTR tv137[ebp]
  000d3	89 55 d4	 mov	 DWORD PTR $T343445[ebp], edx
  000d6	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  000da	83 ec 08	 sub	 esp, 8
  000dd	8b cc		 mov	 ecx, esp
  000df	89 65 d8	 mov	 DWORD PTR $T343444[ebp], esp
  000e2	6a 00		 push	 0
  000e4	8b 45 d4	 mov	 eax, DWORD PTR $T343445[ebp]
  000e7	50		 push	 eax
  000e8	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSimpleSetting@@@@QAE@PAVCSimpleSetting@@PAUCounter@@@Z ; SmartPtr<CSimpleSetting>::SmartPtr<CSimpleSetting>
  000ed	89 45 c0	 mov	 DWORD PTR tv155[ebp], eax
  000f0	8b 4d c0	 mov	 ecx, DWORD PTR tv155[ebp]
  000f3	89 4d bc	 mov	 DWORD PTR tv153[ebp], ecx
  000f6	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  000fa	8d 4d e4	 lea	 ecx, DWORD PTR _Holder$[ebp]
  000fd	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  00102	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00106	8b c8		 mov	 ecx, eax
  00108	e8 00 00 00 00	 call	 ?AddSetting@CSettingsHolder@@QAEXV?$SmartPtr@VCSimpleSetting@@@@@Z ; CSettingsHolder::AddSetting

; 115  :         ++i;

  0010d	8b 55 ec	 mov	 edx, DWORD PTR _i$[ebp]
  00110	83 c2 01	 add	 edx, 1
  00113	89 55 ec	 mov	 DWORD PTR _i$[ebp], edx

; 116  :         NewSetting = GetSettingFunction(i);

  00116	8b 45 ec	 mov	 eax, DWORD PTR _i$[ebp]
  00119	50		 push	 eax
  0011a	ff 55 0c	 call	 DWORD PTR _GetSettingFunction$[ebp]
  0011d	83 c4 04	 add	 esp, 4
  00120	89 45 f0	 mov	 DWORD PTR _NewSetting$[ebp], eax

; 117  :     }

  00123	e9 6a ff ff ff	 jmp	 $LN2@AddSetting@2
$LN1@AddSetting@2:

; 118  : 
; 119  :     m_Holders.push_back(Holder);

  00128	8d 4d e4	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0012b	51		 push	 ecx
  0012c	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0012f	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEXABV?$SmartPtr@VCSettingsHolder@@@@@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::push_back

; 120  : }

  00134	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0013b	8d 4d e4	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0013e	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  00143	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00146	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0014d	59		 pop	 ecx
  0014e	8b e5		 mov	 esp, ebp
  00150	5d		 pop	 ebp
  00151	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$0:
  00000	8b 45 dc	 mov	 eax, DWORD PTR $T343441[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$1:
  0000b	8d 4d e4	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0000e	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$2:
  00013	8b 45 d0	 mov	 eax, DWORD PTR $T343446[ebp]
  00016	50		 push	 eax
  00017	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0001c	59		 pop	 ecx
  0001d	c3		 ret	 0
__unwindfunclet$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z$3:
  0001e	8b 4d d8	 mov	 ecx, DWORD PTR $T343444[ebp]
  00021	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
__ehhandler$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z:
  00026	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0002a	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0002d	8b 4a c4	 mov	 ecx, DWORD PTR [edx-60]
  00030	33 c8		 xor	 ecx, eax
  00032	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00037	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z
  0003c	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ENDP ; CSettingsMaster::AddSettings
PUBLIC	__$ArrayPad$
PUBLIC	?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z ; CSettingsMaster::WriteOneGroupedSetting
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z$1
__ehfuncinfo$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
_TEXT	SEGMENT
_this$ = -80						; size = 4
$T347557 = -76						; size = 28
_SubSection$151921 = -48				; size = 28
__$ArrayPad$ = -20					; size = 4
_pGroup$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_pSetting$ = 8						; size = 4
?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z PROC ; CSettingsMaster::WriteOneGroupedSetting, COMDAT
; _this$ = ecx

; 140  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 44	 sub	 esp, 68			; 00000044H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	89 45 ec	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  0001e	50		 push	 eax
  0001f	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00022	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00028	89 4d b0	 mov	 DWORD PTR _this$[ebp], ecx

; 141  :     CSettingGroup* pGroup = pSetting->GetGroup();

  0002b	8b 4d 08	 mov	 ecx, DWORD PTR _pSetting$[ebp]
  0002e	e8 00 00 00 00	 call	 ?GetGroup@CSimpleSetting@@QAEPAVCSettingGroup@@XZ ; CSimpleSetting::GetGroup
  00033	89 45 f0	 mov	 DWORD PTR _pGroup$[ebp], eax

; 142  :     if(pGroup != NULL)

  00036	83 7d f0 00	 cmp	 DWORD PTR _pGroup$[ebp], 0
  0003a	74 75		 je	 SHORT $LN4@WriteOneGr

; 143  :     {
; 144  :         if(pGroup->IsGroupActive())

  0003c	8b 4d f0	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  0003f	e8 00 00 00 00	 call	 ?IsGroupActive@CSettingGroup@@QAEHXZ ; CSettingGroup::IsGroupActive
  00044	85 c0		 test	 eax, eax
  00046	74 69		 je	 SHORT $LN4@WriteOneGr

; 145  :         {
; 146  :             tstring SubSection;

  00048	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$151921[ebp]
  0004b	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00050	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 147  :             MakeSubSection(SubSection, pGroup);

  00057	8b 45 f0	 mov	 eax, DWORD PTR _pGroup$[ebp]
  0005a	50		 push	 eax
  0005b	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$151921[ebp]
  0005e	51		 push	 ecx
  0005f	8b 4d b0	 mov	 ecx, DWORD PTR _this$[ebp]
  00062	e8 00 00 00 00	 call	 ?MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z ; CSettingsMaster::MakeSubSection

; 148  :             if(SubSection.length() > 0)

  00067	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$151921[ebp]
  0006a	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  0006f	85 c0		 test	 eax, eax
  00071	76 2f		 jbe	 SHORT $LN1@WriteOneGr

; 149  :             {
; 150  :                 pSetting->WriteToIniSubSection(SubSection.c_str());

  00073	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$151921[ebp]
  00076	e8 00 00 00 00	 call	 ?c_str@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEPB_WXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::c_str
  0007b	50		 push	 eax
  0007c	8d 4d b4	 lea	 ecx, DWORD PTR $T347557[ebp]
  0007f	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00084	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00088	6a 01		 push	 1
  0008a	8d 55 b4	 lea	 edx, DWORD PTR $T347557[ebp]
  0008d	52		 push	 edx
  0008e	8b 4d 08	 mov	 ecx, DWORD PTR _pSetting$[ebp]
  00091	e8 00 00 00 00	 call	 ?WriteToIniSubSection@CSimpleSetting@@QAEXABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z ; CSimpleSetting::WriteToIniSubSection
  00096	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  0009a	8d 4d b4	 lea	 ecx, DWORD PTR $T347557[ebp]
  0009d	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN1@WriteOneGr:

; 151  :             }
; 152  :         }

  000a2	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000a9	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$151921[ebp]
  000ac	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN4@WriteOneGr:

; 153  :     }
; 154  : }

  000b1	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000b4	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000bb	59		 pop	 ecx
  000bc	8b 4d ec	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  000bf	33 cd		 xor	 ecx, ebp
  000c1	e8 00 00 00 00	 call	 @__security_check_cookie@4
  000c6	8b e5		 mov	 esp, ebp
  000c8	5d		 pop	 ebp
  000c9	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z$0:
  00000	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$151921[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z$1:
  00008	8d 4d b4	 lea	 ecx, DWORD PTR $T347557[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a b8	 mov	 ecx, DWORD PTR [edx-72]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00024	33 c8		 xor	 ecx, eax
  00026	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002b	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
  00030	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z ENDP ; CSettingsMaster::WriteOneGroupedSetting
PUBLIC	__$ArrayPad$
PUBLIC	?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z ; CSettingsMaster::LoadOneGroupedSetting
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z$0
__ehfuncinfo$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
_TEXT	SEGMENT
_this$ = -52						; size = 4
_SubSection$ = -48					; size = 28
__$ArrayPad$ = -20					; size = 4
_pGroup$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_pSetting$ = 8						; size = 4
?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z PROC ; CSettingsMaster::LoadOneGroupedSetting, COMDAT
; _this$ = ecx

; 122  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 28	 sub	 esp, 40			; 00000028H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	89 45 ec	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  0001e	50		 push	 eax
  0001f	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00022	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00028	89 4d cc	 mov	 DWORD PTR _this$[ebp], ecx

; 123  :     tstring SubSection(_T(""));

  0002b	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  00030	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$[ebp]
  00033	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00038	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 124  : 
; 125  :     CSettingGroup* pGroup = pSetting->GetGroup();

  0003f	8b 4d 08	 mov	 ecx, DWORD PTR _pSetting$[ebp]
  00042	e8 00 00 00 00	 call	 ?GetGroup@CSimpleSetting@@QAEPAVCSettingGroup@@XZ ; CSimpleSetting::GetGroup
  00047	89 45 f0	 mov	 DWORD PTR _pGroup$[ebp], eax

; 126  :     if(pGroup != NULL)

  0004a	83 7d f0 00	 cmp	 DWORD PTR _pGroup$[ebp], 0
  0004e	74 34		 je	 SHORT $LN3@LoadOneGro

; 127  :     {
; 128  :         if(pGroup->IsGroupActive())

  00050	8b 4d f0	 mov	 ecx, DWORD PTR _pGroup$[ebp]
  00053	e8 00 00 00 00	 call	 ?IsGroupActive@CSettingGroup@@QAEHXZ ; CSettingGroup::IsGroupActive
  00058	85 c0		 test	 eax, eax
  0005a	74 28		 je	 SHORT $LN3@LoadOneGro

; 129  :         {
; 130  :             MakeSubSection(SubSection, pGroup);

  0005c	8b 45 f0	 mov	 eax, DWORD PTR _pGroup$[ebp]
  0005f	50		 push	 eax
  00060	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$[ebp]
  00063	51		 push	 ecx
  00064	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00067	e8 00 00 00 00	 call	 ?MakeSubSection@CSettingsMaster@@AAEXAAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAVCSettingGroup@@@Z ; CSettingsMaster::MakeSubSection

; 131  :             if(SubSection.length() > 0)

  0006c	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$[ebp]
  0006f	e8 00 00 00 00	 call	 ?length@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::length
  00074	85 c0		 test	 eax, eax
  00076	76 0c		 jbe	 SHORT $LN3@LoadOneGro

; 132  :             {
; 133  :                 pSetting->ReadFromIniSubSection(SubSection);

  00078	8d 55 d0	 lea	 edx, DWORD PTR _SubSection$[ebp]
  0007b	52		 push	 edx
  0007c	8b 4d 08	 mov	 ecx, DWORD PTR _pSetting$[ebp]
  0007f	e8 00 00 00 00	 call	 ?ReadFromIniSubSection@CSimpleSetting@@QAEHABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; CSimpleSetting::ReadFromIniSubSection
$LN3@LoadOneGro:

; 134  :             }
; 135  :         }
; 136  :     }
; 137  : }

  00084	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0008b	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$[ebp]
  0008e	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00093	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00096	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0009d	59		 pop	 ecx
  0009e	8b 4d ec	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  000a1	33 cd		 xor	 ecx, ebp
  000a3	e8 00 00 00 00	 call	 @__security_check_cookie@4
  000a8	8b e5		 mov	 esp, ebp
  000aa	5d		 pop	 ebp
  000ab	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z$0:
  00000	8d 4d d0	 lea	 ecx, DWORD PTR _SubSection$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a d4	 mov	 ecx, DWORD PTR [edx-44]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  0001c	33 c8		 xor	 ecx, eax
  0001e	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00023	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z
  00028	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z ENDP ; CSettingsMaster::LoadOneGroupedSetting
; Function compile flags: /Odtp
;	COMDAT ??_GCSettingGroup@@QAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCSettingGroup@@QAEPAXI@Z PROC			; CSettingGroup::`scalar deleting destructor', COMDAT
; _this$ = ecx
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??1CSettingGroup@@QAE@XZ ; CSettingGroup::~CSettingGroup
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@436
  00017	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001a	51		 push	 ecx
  0001b	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00020	83 c4 04	 add	 esp, 4
$LN1@scalar@436:
  00023	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00026	8b e5		 mov	 esp, ebp
  00028	5d		 pop	 ebp
  00029	c2 04 00	 ret	 4
??_GCSettingGroup@@QAEPAXI@Z ENDP			; CSettingGroup::`scalar deleting destructor'
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ?Clear@?$SmartPtr@VCSettingGroup@@@@QAEXXZ
_TEXT	SEGMENT
tv82 = -20						; size = 4
_this$ = -16						; size = 4
$T349366 = -12						; size = 4
$T349365 = -8						; size = 4
$T349364 = -4						; size = 4
?Clear@?$SmartPtr@VCSettingGroup@@@@QAEXXZ PROC		; SmartPtr<CSettingGroup>::Clear, COMDAT
; _this$ = ecx

; 240  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 14	 sub	 esp, 20			; 00000014H
  00006	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx

; 241  :         if (counter)

  00009	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	83 78 04 00	 cmp	 DWORD PTR [eax+4], 0
  00010	74 5d		 je	 SHORT $LN2@Clear@253

; 242  :         {
; 243  :             (counter->count)--;

  00012	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00015	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  00018	8b 02		 mov	 eax, DWORD PTR [edx]
  0001a	83 e8 01	 sub	 eax, 1
  0001d	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00020	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  00023	89 02		 mov	 DWORD PTR [edx], eax

; 244  : 
; 245  :             if (counter->count == 0)

  00025	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00028	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  0002b	83 39 00	 cmp	 DWORD PTR [ecx], 0
  0002e	75 3f		 jne	 SHORT $LN2@Clear@253

; 246  :             {
; 247  :                 delete counter;

  00030	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  00033	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  00036	89 45 fc	 mov	 DWORD PTR $T349364[ebp], eax
  00039	8b 4d fc	 mov	 ecx, DWORD PTR $T349364[ebp]
  0003c	51		 push	 ecx
  0003d	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00042	83 c4 04	 add	 esp, 4

; 248  :                 delete rawPtr;

  00045	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  00048	8b 02		 mov	 eax, DWORD PTR [edx]
  0004a	89 45 f4	 mov	 DWORD PTR $T349366[ebp], eax
  0004d	8b 4d f4	 mov	 ecx, DWORD PTR $T349366[ebp]
  00050	89 4d f8	 mov	 DWORD PTR $T349365[ebp], ecx
  00053	83 7d f8 00	 cmp	 DWORD PTR $T349365[ebp], 0
  00057	74 0f		 je	 SHORT $LN5@Clear@253
  00059	6a 01		 push	 1
  0005b	8b 4d f8	 mov	 ecx, DWORD PTR $T349365[ebp]
  0005e	e8 00 00 00 00	 call	 ??_GCSettingGroup@@QAEPAXI@Z
  00063	89 45 ec	 mov	 DWORD PTR tv82[ebp], eax
  00066	eb 07		 jmp	 SHORT $LN2@Clear@253
$LN5@Clear@253:
  00068	c7 45 ec 00 00
	00 00		 mov	 DWORD PTR tv82[ebp], 0
$LN2@Clear@253:

; 249  :             }
; 250  :         }
; 251  :         counter = 0;

  0006f	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  00072	c7 42 04 00 00
	00 00		 mov	 DWORD PTR [edx+4], 0

; 252  :         rawPtr = 0;

  00079	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0007c	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0

; 253  :     }

  00082	8b e5		 mov	 esp, ebp
  00084	5d		 pop	 ebp
  00085	c3		 ret	 0
?Clear@?$SmartPtr@VCSettingGroup@@@@QAEXXZ ENDP		; SmartPtr<CSettingGroup>::Clear
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ PROC		; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>, COMDAT
; _this$ = ecx

; 105  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 106  :         Clear();

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?Clear@?$SmartPtr@VCSettingGroup@@@@QAEXXZ ; SmartPtr<CSettingGroup>::Clear

; 107  :     }

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ENDP		; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
_TEXT	ENDS
PUBLIC	?SaveAllSettings@CSettingsMaster@@QAEXH@Z	; CSettingsMaster::SaveAllSettings
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\settingsmaster.cpp
;	COMDAT ?SaveAllSettings@CSettingsMaster@@QAEXH@Z
_TEXT	SEGMENT
_this$ = -20						; size = 4
$T349373 = -16						; size = 8
_it$152149 = -8						; size = 8
_bOptimizeFileAccess$ = 8				; size = 4
?SaveAllSettings@CSettingsMaster@@QAEXH@Z PROC		; CSettingsMaster::SaveAllSettings, COMDAT
; _this$ = ecx

; 400  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 14	 sub	 esp, 20			; 00000014H
  00006	89 4d ec	 mov	 DWORD PTR _this$[ebp], ecx

; 401  :     for(Holders::iterator it = m_Holders.begin(); it != m_Holders.end(); ++it)

  00009	8d 45 f8	 lea	 eax, DWORD PTR _it$152149[ebp]
  0000c	50		 push	 eax
  0000d	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00010	e8 00 00 00 00	 call	 ?begin@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::begin
  00015	eb 08		 jmp	 SHORT $LN3@SaveAllSet
$LN2@SaveAllSet:
  00017	8d 4d f8	 lea	 ecx, DWORD PTR _it$152149[ebp]
  0001a	e8 00 00 00 00	 call	 ??E?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++
$LN3@SaveAllSet:
  0001f	8d 4d f0	 lea	 ecx, DWORD PTR $T349373[ebp]
  00022	51		 push	 ecx
  00023	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00026	e8 00 00 00 00	 call	 ?end@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::end
  0002b	50		 push	 eax
  0002c	8d 4d f8	 lea	 ecx, DWORD PTR _it$152149[ebp]
  0002f	e8 00 00 00 00	 call	 ??9?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBE_NABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator!=
  00034	0f b6 d0	 movzx	 edx, al
  00037	85 d2		 test	 edx, edx
  00039	74 1c		 je	 SHORT $LN1@SaveAllSet

; 402  :     {
; 403  :         (*it)->WriteToIni(bOptimizeFileAccess);

  0003b	8b 45 08	 mov	 eax, DWORD PTR _bOptimizeFileAccess$[ebp]
  0003e	50		 push	 eax
  0003f	8d 4d f8	 lea	 ecx, DWORD PTR _it$152149[ebp]
  00042	e8 00 00 00 00	 call	 ??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
  00047	8b c8		 mov	 ecx, eax
  00049	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  0004e	8b c8		 mov	 ecx, eax
  00050	e8 00 00 00 00	 call	 ?WriteToIni@CSettingsHolder@@QAEXH@Z ; CSettingsHolder::WriteToIni

; 404  :     }

  00055	eb c0		 jmp	 SHORT $LN2@SaveAllSet
$LN1@SaveAllSet:

; 405  : 
; 406  :     Providers_WriteToIni(bOptimizeFileAccess);

  00057	8b 4d 08	 mov	 ecx, DWORD PTR _bOptimizeFileAccess$[ebp]
  0005a	51		 push	 ecx
  0005b	e8 00 00 00 00	 call	 ?Providers_WriteToIni@@YAXH@Z ; Providers_WriteToIni
  00060	83 c4 04	 add	 esp, 4

; 407  : 
; 408  :     // These two lines flushes current INI file to disk (in case of abrupt poweroff shortly afterwards)
; 409  :     WritePrivateProfileString(NULL, NULL, NULL, NULL);

  00063	6a 00		 push	 0
  00065	6a 00		 push	 0
  00067	6a 00		 push	 0
  00069	6a 00		 push	 0
  0006b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__WritePrivateProfileStringW@16

; 410  : 
; 411  :     //BeautifyIniFile(m_sIniFile.c_str());
; 412  : }

  00071	8b e5		 mov	 esp, ebp
  00073	5d		 pop	 ebp
  00074	c2 04 00	 ret	 4
?SaveAllSettings@CSettingsMaster@@QAEXH@Z ENDP		; CSettingsMaster::SaveAllSettings
_TEXT	ENDS
PUBLIC	?SetAudioInput@CSettingsMaster@@QAEXJ@Z		; CSettingsMaster::SetAudioInput
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?SetAudioInput@CSettingsMaster@@QAEXJ@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?SetAudioInput@CSettingsMaster@@QAEXJ@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?SetAudioInput@CSettingsMaster@@QAEXJ@Z$1
__ehfuncinfo$?SetAudioInput@CSettingsMaster@@QAEXJ@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?SetAudioInput@CSettingsMaster@@QAEXJ@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?SetAudioInput@CSettingsMaster@@QAEXJ@Z
_TEXT	SEGMENT
tv86 = -180						; size = 4
tv88 = -176						; size = 4
_this$ = -172						; size = 4
$T349377 = -168						; size = 28
$T349376 = -140						; size = 128
__$EHRec$ = -12						; size = 12
_NewValue$ = 8						; size = 4
?SetAudioInput@CSettingsMaster@@QAEXJ@Z PROC		; CSettingsMaster::SetAudioInput, COMDAT
; _this$ = ecx

; 349  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?SetAudioInput@CSettingsMaster@@QAEXJ@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec a8 00 00
	00		 sub	 esp, 168		; 000000a8H
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	50		 push	 eax
  0001f	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00022	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00028	89 8d 54 ff ff
	ff		 mov	 DWORD PTR _this$[ebp], ecx

; 350  :     if (NewValue>=0)

  0002e	83 7d 08 00	 cmp	 DWORD PTR _NewValue$[ebp], 0
  00032	0f 8c 89 00 00
	00		 jl	 $LN2@SetAudioIn@3

; 351  :     {
; 352  :         m_AudioInputName = MakeString() << _T("AudioInput") << NewValue;

  00038	8d 8d 74 ff ff
	ff		 lea	 ecx, DWORD PTR $T349376[ebp]
  0003e	e8 00 00 00 00	 call	 ??0MakeString@@QAE@XZ
  00043	89 85 50 ff ff
	ff		 mov	 DWORD PTR tv88[ebp], eax
  00049	8b 85 50 ff ff
	ff		 mov	 eax, DWORD PTR tv88[ebp]
  0004f	89 85 4c ff ff
	ff		 mov	 DWORD PTR tv86[ebp], eax
  00055	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0005c	8d 8d 58 ff ff
	ff		 lea	 ecx, DWORD PTR $T349377[ebp]
  00062	51		 push	 ecx
  00063	8d 55 08	 lea	 edx, DWORD PTR _NewValue$[ebp]
  00066	52		 push	 edx
  00067	68 00 00 00 00	 push	 OFFSET ??_C@_1BG@MNOOKGGE@?$AAA?$AAu?$AAd?$AAi?$AAo?$AAI?$AAn?$AAp?$AAu?$AAt?$AA?$AA@
  0006c	8b 8d 4c ff ff
	ff		 mov	 ecx, DWORD PTR tv86[ebp]
  00072	e8 00 00 00 00	 call	 ??$?6$$BY0L@$$CB_W@MakeString@@QAEAAV0@AAY0L@$$CB_W@Z ; MakeString::operator<<<wchar_t const [11]>
  00077	8b c8		 mov	 ecx, eax
  00079	e8 00 00 00 00	 call	 ??$?6J@MakeString@@QAEAAV0@ABJ@Z ; MakeString::operator<<<long>
  0007e	8b c8		 mov	 ecx, eax
  00080	e8 00 00 00 00	 call	 ??BMakeString@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; MakeString::operator std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00085	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00089	8d 85 58 ff ff
	ff		 lea	 eax, DWORD PTR $T349377[ebp]
  0008f	50		 push	 eax
  00090	8b 8d 54 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00096	83 c1 6c	 add	 ecx, 108		; 0000006cH
  00099	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
  0009e	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  000a2	8d 8d 58 ff ff
	ff		 lea	 ecx, DWORD PTR $T349377[ebp]
  000a8	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  000ad	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000b4	8d 8d 74 ff ff
	ff		 lea	 ecx, DWORD PTR $T349376[ebp]
  000ba	e8 00 00 00 00	 call	 ??1MakeString@@QAE@XZ

; 353  :     }
; 354  :     else

  000bf	eb 13		 jmp	 SHORT $LN3@SetAudioIn@3
$LN2@SetAudioIn@3:

; 355  :     {
; 356  :         m_AudioInputName = _T("");

  000c1	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  000c6	8b 8d 54 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  000cc	83 c1 6c	 add	 ecx, 108		; 0000006cH
  000cf	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
$LN3@SetAudioIn@3:

; 357  :     }
; 358  : }

  000d4	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000d7	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000de	59		 pop	 ecx
  000df	8b e5		 mov	 esp, ebp
  000e1	5d		 pop	 ebp
  000e2	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?SetAudioInput@CSettingsMaster@@QAEXJ@Z$0:
  00000	8d 8d 74 ff ff
	ff		 lea	 ecx, DWORD PTR $T349376[ebp]
  00006	e9 00 00 00 00	 jmp	 ??1MakeString@@QAE@XZ
__unwindfunclet$?SetAudioInput@CSettingsMaster@@QAEXJ@Z$1:
  0000b	8d 8d 58 ff ff
	ff		 lea	 ecx, DWORD PTR $T349377[ebp]
  00011	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?SetAudioInput@CSettingsMaster@@QAEXJ@Z:
  00016	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001a	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001d	8b 8a 54 ff ff
	ff		 mov	 ecx, DWORD PTR [edx-172]
  00023	33 c8		 xor	 ecx, eax
  00025	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002a	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?SetAudioInput@CSettingsMaster@@QAEXJ@Z
  0002f	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?SetAudioInput@CSettingsMaster@@QAEXJ@Z ENDP		; CSettingsMaster::SetAudioInput
PUBLIC	?SetVideoInput@CSettingsMaster@@QAEXJ@Z		; CSettingsMaster::SetVideoInput
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?SetVideoInput@CSettingsMaster@@QAEXJ@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?SetVideoInput@CSettingsMaster@@QAEXJ@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?SetVideoInput@CSettingsMaster@@QAEXJ@Z$1
__ehfuncinfo$?SetVideoInput@CSettingsMaster@@QAEXJ@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?SetVideoInput@CSettingsMaster@@QAEXJ@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?SetVideoInput@CSettingsMaster@@QAEXJ@Z
_TEXT	SEGMENT
tv86 = -180						; size = 4
tv88 = -176						; size = 4
_this$ = -172						; size = 4
$T349389 = -168						; size = 28
$T349388 = -140						; size = 128
__$EHRec$ = -12						; size = 12
_NewValue$ = 8						; size = 4
?SetVideoInput@CSettingsMaster@@QAEXJ@Z PROC		; CSettingsMaster::SetVideoInput, COMDAT
; _this$ = ecx

; 337  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?SetVideoInput@CSettingsMaster@@QAEXJ@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec a8 00 00
	00		 sub	 esp, 168		; 000000a8H
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	50		 push	 eax
  0001f	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00022	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00028	89 8d 54 ff ff
	ff		 mov	 DWORD PTR _this$[ebp], ecx

; 338  :     if (NewValue>=0)

  0002e	83 7d 08 00	 cmp	 DWORD PTR _NewValue$[ebp], 0
  00032	0f 8c 89 00 00
	00		 jl	 $LN2@SetVideoIn@2

; 339  :     {
; 340  :         m_VideoInputName = MakeString() << _T("VideoInput") << NewValue;

  00038	8d 8d 74 ff ff
	ff		 lea	 ecx, DWORD PTR $T349388[ebp]
  0003e	e8 00 00 00 00	 call	 ??0MakeString@@QAE@XZ
  00043	89 85 50 ff ff
	ff		 mov	 DWORD PTR tv88[ebp], eax
  00049	8b 85 50 ff ff
	ff		 mov	 eax, DWORD PTR tv88[ebp]
  0004f	89 85 4c ff ff
	ff		 mov	 DWORD PTR tv86[ebp], eax
  00055	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0005c	8d 8d 58 ff ff
	ff		 lea	 ecx, DWORD PTR $T349389[ebp]
  00062	51		 push	 ecx
  00063	8d 55 08	 lea	 edx, DWORD PTR _NewValue$[ebp]
  00066	52		 push	 edx
  00067	68 00 00 00 00	 push	 OFFSET ??_C@_1BG@JFBCJHGD@?$AAV?$AAi?$AAd?$AAe?$AAo?$AAI?$AAn?$AAp?$AAu?$AAt?$AA?$AA@
  0006c	8b 8d 4c ff ff
	ff		 mov	 ecx, DWORD PTR tv86[ebp]
  00072	e8 00 00 00 00	 call	 ??$?6$$BY0L@$$CB_W@MakeString@@QAEAAV0@AAY0L@$$CB_W@Z ; MakeString::operator<<<wchar_t const [11]>
  00077	8b c8		 mov	 ecx, eax
  00079	e8 00 00 00 00	 call	 ??$?6J@MakeString@@QAEAAV0@ABJ@Z ; MakeString::operator<<<long>
  0007e	8b c8		 mov	 ecx, eax
  00080	e8 00 00 00 00	 call	 ??BMakeString@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; MakeString::operator std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00085	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00089	8d 85 58 ff ff
	ff		 lea	 eax, DWORD PTR $T349389[ebp]
  0008f	50		 push	 eax
  00090	8b 8d 54 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00096	83 c1 50	 add	 ecx, 80			; 00000050H
  00099	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
  0009e	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  000a2	8d 8d 58 ff ff
	ff		 lea	 ecx, DWORD PTR $T349389[ebp]
  000a8	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  000ad	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000b4	8d 8d 74 ff ff
	ff		 lea	 ecx, DWORD PTR $T349388[ebp]
  000ba	e8 00 00 00 00	 call	 ??1MakeString@@QAE@XZ

; 341  :     }
; 342  :     else

  000bf	eb 13		 jmp	 SHORT $LN3@SetVideoIn@2
$LN2@SetVideoIn@2:

; 343  :     {
; 344  :         m_VideoInputName = _T("");

  000c1	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  000c6	8b 8d 54 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  000cc	83 c1 50	 add	 ecx, 80			; 00000050H
  000cf	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
$LN3@SetVideoIn@2:

; 345  :     }
; 346  : }

  000d4	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000d7	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000de	59		 pop	 ecx
  000df	8b e5		 mov	 esp, ebp
  000e1	5d		 pop	 ebp
  000e2	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?SetVideoInput@CSettingsMaster@@QAEXJ@Z$0:
  00000	8d 8d 74 ff ff
	ff		 lea	 ecx, DWORD PTR $T349388[ebp]
  00006	e9 00 00 00 00	 jmp	 ??1MakeString@@QAE@XZ
__unwindfunclet$?SetVideoInput@CSettingsMaster@@QAEXJ@Z$1:
  0000b	8d 8d 58 ff ff
	ff		 lea	 ecx, DWORD PTR $T349389[ebp]
  00011	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?SetVideoInput@CSettingsMaster@@QAEXJ@Z:
  00016	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001a	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001d	8b 8a 54 ff ff
	ff		 mov	 ecx, DWORD PTR [edx-172]
  00023	33 c8		 xor	 ecx, eax
  00025	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002a	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?SetVideoInput@CSettingsMaster@@QAEXJ@Z
  0002f	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?SetVideoInput@CSettingsMaster@@QAEXJ@Z ENDP		; CSettingsMaster::SetVideoInput
PUBLIC	?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z ; CSettingsMaster::ParseSettingHolder
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z$1
__ehfuncinfo$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z
_TEXT	SEGMENT
tv92 = -60						; size = 4
tv94 = -56						; size = 4
tv90 = -52						; size = 4
tv93 = -48						; size = 4
_this$ = -44						; size = 4
$T349401 = -40						; size = 8
$T349400 = -32						; size = 8
_n$151931 = -24						; size = 4
_bAction$ = -20						; size = 4
_Num$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_Holder$ = 8						; size = 4
_IsLoad$ = 12						; size = 4
?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z PROC ; CSettingsMaster::ParseSettingHolder, COMDAT
; _this$ = ecx

; 158  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 30	 sub	 esp, 48			; 00000030H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d d4	 mov	 DWORD PTR _this$[ebp], ecx

; 159  :     int Num = Holder->GetNumSettings();

  00028	8b 4d 08	 mov	 ecx, DWORD PTR _Holder$[ebp]
  0002b	e8 00 00 00 00	 call	 ?GetNumSettings@CSettingsHolder@@QAEJXZ ; CSettingsHolder::GetNumSettings
  00030	89 45 f0	 mov	 DWORD PTR _Num$[ebp], eax

; 160  : 
; 161  :     BOOL bAction = FALSE;

  00033	c7 45 ec 00 00
	00 00		 mov	 DWORD PTR _bAction$[ebp], 0

; 162  : 
; 163  :     for (int n = 0; n < Num; n++)

  0003a	c7 45 e8 00 00
	00 00		 mov	 DWORD PTR _n$151931[ebp], 0
  00041	eb 09		 jmp	 SHORT $LN5@ParseSetti
$LN4@ParseSetti:
  00043	8b 45 e8	 mov	 eax, DWORD PTR _n$151931[ebp]
  00046	83 c0 01	 add	 eax, 1
  00049	89 45 e8	 mov	 DWORD PTR _n$151931[ebp], eax
$LN5@ParseSetti:
  0004c	8b 4d e8	 mov	 ecx, DWORD PTR _n$151931[ebp]
  0004f	3b 4d f0	 cmp	 ecx, DWORD PTR _Num$[ebp]
  00052	0f 8d 8d 00 00
	00		 jge	 $LN6@ParseSetti

; 164  :     {
; 165  :         if (IsLoad)

  00058	83 7d 0c 00	 cmp	 DWORD PTR _IsLoad$[ebp], 0
  0005c	74 42		 je	 SHORT $LN2@ParseSetti

; 166  :         {
; 167  :             LoadOneGroupedSetting(Holder->GetSetting(n).GetRawPointer());

  0005e	8b 55 e8	 mov	 edx, DWORD PTR _n$151931[ebp]
  00061	52		 push	 edx
  00062	8d 45 e0	 lea	 eax, DWORD PTR $T349400[ebp]
  00065	50		 push	 eax
  00066	8b 4d 08	 mov	 ecx, DWORD PTR _Holder$[ebp]
  00069	e8 00 00 00 00	 call	 ?GetSetting@CSettingsHolder@@QAE?AV?$SmartPtr@VCSimpleSetting@@@@J@Z ; CSettingsHolder::GetSetting
  0006e	89 45 d0	 mov	 DWORD PTR tv93[ebp], eax
  00071	8b 4d d0	 mov	 ecx, DWORD PTR tv93[ebp]
  00074	89 4d cc	 mov	 DWORD PTR tv90[ebp], ecx
  00077	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0007e	8b 4d cc	 mov	 ecx, DWORD PTR tv90[ebp]
  00081	e8 00 00 00 00	 call	 ?GetRawPointer@?$SmartPtr@VCSimpleSetting@@@@QBEPAVCSimpleSetting@@XZ ; SmartPtr<CSimpleSetting>::GetRawPointer
  00086	50		 push	 eax
  00087	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  0008a	e8 00 00 00 00	 call	 ?LoadOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z ; CSettingsMaster::LoadOneGroupedSetting
  0008f	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00096	8d 4d e0	 lea	 ecx, DWORD PTR $T349400[ebp]
  00099	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>

; 168  :         }
; 169  :         else

  0009e	eb 40		 jmp	 SHORT $LN1@ParseSetti
$LN2@ParseSetti:

; 170  :         {
; 171  :             WriteOneGroupedSetting(Holder->GetSetting(n).GetRawPointer());

  000a0	8b 55 e8	 mov	 edx, DWORD PTR _n$151931[ebp]
  000a3	52		 push	 edx
  000a4	8d 45 d8	 lea	 eax, DWORD PTR $T349401[ebp]
  000a7	50		 push	 eax
  000a8	8b 4d 08	 mov	 ecx, DWORD PTR _Holder$[ebp]
  000ab	e8 00 00 00 00	 call	 ?GetSetting@CSettingsHolder@@QAE?AV?$SmartPtr@VCSimpleSetting@@@@J@Z ; CSettingsHolder::GetSetting
  000b0	89 45 c8	 mov	 DWORD PTR tv94[ebp], eax
  000b3	8b 4d c8	 mov	 ecx, DWORD PTR tv94[ebp]
  000b6	89 4d c4	 mov	 DWORD PTR tv92[ebp], ecx
  000b9	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  000c0	8b 4d c4	 mov	 ecx, DWORD PTR tv92[ebp]
  000c3	e8 00 00 00 00	 call	 ?GetRawPointer@?$SmartPtr@VCSimpleSetting@@@@QBEPAVCSimpleSetting@@XZ ; SmartPtr<CSimpleSetting>::GetRawPointer
  000c8	50		 push	 eax
  000c9	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  000cc	e8 00 00 00 00	 call	 ?WriteOneGroupedSetting@CSettingsMaster@@QAEXPAVCSimpleSetting@@@Z ; CSettingsMaster::WriteOneGroupedSetting
  000d1	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000d8	8d 4d d8	 lea	 ecx, DWORD PTR $T349401[ebp]
  000db	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
$LN1@ParseSetti:

; 172  :         }

  000e0	e9 5e ff ff ff	 jmp	 $LN4@ParseSetti
$LN6@ParseSetti:

; 173  :     }
; 174  : }

  000e5	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000e8	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000ef	59		 pop	 ecx
  000f0	8b e5		 mov	 esp, ebp
  000f2	5d		 pop	 ebp
  000f3	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z$0:
  00000	8d 4d e0	 lea	 ecx, DWORD PTR $T349400[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
__unwindfunclet$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z$1:
  00008	8d 4d d8	 lea	 ecx, DWORD PTR $T349401[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
__ehhandler$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a cc	 mov	 ecx, DWORD PTR [edx-52]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z ENDP ; CSettingsMaster::ParseSettingHolder
; Function compile flags: /Odtp
;	COMDAT ??_G?$SmartPtr@VCSettingGroup@@@@QAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_G?$SmartPtr@VCSettingGroup@@@@QAEPAXI@Z PROC		; SmartPtr<CSettingGroup>::`scalar deleting destructor', COMDAT
; _this$ = ecx
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@437
  00017	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001a	51		 push	 ecx
  0001b	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00020	83 c4 04	 add	 esp, 4
$LN1@scalar@437:
  00023	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00026	8b e5		 mov	 esp, ebp
  00028	5d		 pop	 ebp
  00029	c2 04 00	 ret	 4
??_G?$SmartPtr@VCSettingGroup@@@@QAEPAXI@Z ENDP		; SmartPtr<CSettingGroup>::`scalar deleting destructor'
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??$_Destroy@V?$SmartPtr@VCSettingGroup@@@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
??$_Destroy@V?$SmartPtr@VCSettingGroup@@@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@@Z PROC ; std::_Destroy<SmartPtr<CSettingGroup> >, COMDAT

; 58   : 	{	// destroy object at _Ptr

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp

; 59   : 	_DESTRUCTOR(_Ty, _Ptr);

  00003	6a 00		 push	 0
  00005	8b 4d 08	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  00008	e8 00 00 00 00	 call	 ??_G?$SmartPtr@VCSettingGroup@@@@QAEPAXI@Z

; 60   : 	}

  0000d	5d		 pop	 ebp
  0000e	c3		 ret	 0
??$_Destroy@V?$SmartPtr@VCSettingGroup@@@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@@Z ENDP ; std::_Destroy<SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ??4?$SmartPtr@VCSettingGroup@@@@QAEAAV0@ABV0@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_otherPtr$ = 8						; size = 4
??4?$SmartPtr@VCSettingGroup@@@@QAEAAV0@ABV0@@Z PROC	; SmartPtr<CSettingGroup>::operator=, COMDAT
; _this$ = ecx

; 111  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 112  :         if (this != &otherPtr)

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	3b 45 08	 cmp	 eax, DWORD PTR _otherPtr$[ebp]
  0000d	74 21		 je	 SHORT $LN1@operator@534

; 113  :         {
; 114  :             Clear();

  0000f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00012	e8 00 00 00 00	 call	 ?Clear@?$SmartPtr@VCSettingGroup@@@@QAEXXZ ; SmartPtr<CSettingGroup>::Clear

; 115  :             acquire(otherPtr.counter);

  00017	8b 4d 08	 mov	 ecx, DWORD PTR _otherPtr$[ebp]
  0001a	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  0001d	52		 push	 edx
  0001e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00021	e8 00 00 00 00	 call	 ?acquire@?$SmartPtr@VCSettingGroup@@@@AAEXPAUCounter@@@Z ; SmartPtr<CSettingGroup>::acquire

; 116  :             rawPtr = otherPtr.rawPtr;

  00026	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00029	8b 4d 08	 mov	 ecx, DWORD PTR _otherPtr$[ebp]
  0002c	8b 11		 mov	 edx, DWORD PTR [ecx]
  0002e	89 10		 mov	 DWORD PTR [eax], edx
$LN1@operator@534:

; 117  :         }
; 118  :         return *this;

  00030	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]

; 119  :     }

  00033	8b e5		 mov	 esp, ebp
  00035	5d		 pop	 ebp
  00036	c2 04 00	 ret	 4
??4?$SmartPtr@VCSettingGroup@@@@QAEAAV0@ABV0@@Z ENDP	; SmartPtr<CSettingGroup>::operator=
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ?destroy@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
?destroy@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@@Z PROC ; std::allocator<SmartPtr<CSettingGroup> >::destroy, COMDAT
; _this$ = ecx

; 159  : 		{	// destroy object at _Ptr

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 160  : 		_Destroy(_Ptr);

  00007	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  0000a	50		 push	 eax
  0000b	e8 00 00 00 00	 call	 ??$_Destroy@V?$SmartPtr@VCSettingGroup@@@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::_Destroy<SmartPtr<CSettingGroup> >
  00010	83 c4 04	 add	 esp, 4

; 161  : 		}

  00013	8b e5		 mov	 esp, ebp
  00015	5d		 pop	 ebp
  00016	c2 04 00	 ret	 4
?destroy@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@@Z ENDP ; std::allocator<SmartPtr<CSettingGroup> >::destroy
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??$_Fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Val$ = 16						; size = 4
??$_Fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z PROC ; std::_Fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >, COMDAT

; 3130 : 	{	// copy _Val through [_First, _Last)

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp

; 3131 : 	_DEBUG_RANGE(_First, _Last);
; 3132 : 	for (; _First != _Last; ++_First)

  00003	eb 09		 jmp	 SHORT $LN3@Fill@45
$LN2@Fill@45:
  00005	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  00008	83 c0 08	 add	 eax, 8
  0000b	89 45 08	 mov	 DWORD PTR __First$[ebp], eax
$LN3@Fill@45:
  0000e	8b 4d 08	 mov	 ecx, DWORD PTR __First$[ebp]
  00011	3b 4d 0c	 cmp	 ecx, DWORD PTR __Last$[ebp]
  00014	74 0e		 je	 SHORT $LN4@Fill@45

; 3133 : 		*_First = _Val;

  00016	8b 55 10	 mov	 edx, DWORD PTR __Val$[ebp]
  00019	52		 push	 edx
  0001a	8b 4d 08	 mov	 ecx, DWORD PTR __First$[ebp]
  0001d	e8 00 00 00 00	 call	 ??4?$SmartPtr@VCSettingGroup@@@@QAEAAV0@ABV0@@Z ; SmartPtr<CSettingGroup>::operator=
  00022	eb e1		 jmp	 SHORT $LN2@Fill@45
$LN4@Fill@45:

; 3134 : 	}

  00024	5d		 pop	 ebp
  00025	c3		 ret	 0
??$_Fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z ENDP ; std::_Fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Al$ = 16						; size = 4
___formal$ = 20						; size = 1
??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z PROC ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >, COMDAT

; 232  : 	{	// destroy [_First, _Last), arbitrary type

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp

; 233  : 	for (; _First != _Last; ++_First)

  00003	eb 09		 jmp	 SHORT $LN3@Destroy_ra@33
$LN2@Destroy_ra@33:
  00005	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  00008	83 c0 08	 add	 eax, 8
  0000b	89 45 08	 mov	 DWORD PTR __First$[ebp], eax
$LN3@Destroy_ra@33:
  0000e	8b 4d 08	 mov	 ecx, DWORD PTR __First$[ebp]
  00011	3b 4d 0c	 cmp	 ecx, DWORD PTR __Last$[ebp]
  00014	74 0e		 je	 SHORT $LN4@Destroy_ra@33

; 234  : 		_Al.destroy(_First);

  00016	8b 55 08	 mov	 edx, DWORD PTR __First$[ebp]
  00019	52		 push	 edx
  0001a	8b 4d 10	 mov	 ecx, DWORD PTR __Al$[ebp]
  0001d	e8 00 00 00 00	 call	 ?destroy@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::allocator<SmartPtr<CSettingGroup> >::destroy
  00022	eb e1		 jmp	 SHORT $LN2@Destroy_ra@33
$LN4@Destroy_ra@33:

; 235  : 	}

  00024	5d		 pop	 ebp
  00025	c3		 ret	 0
??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z ENDP ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >
_TEXT	ENDS
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\memory
xdata$x	SEGMENT
__unwindtable$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
__catchsym$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$2 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$0
__tryblocktable$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z DD 00H
	DD	00H
	DD	01H
	DD	01H
	DD	FLAT:__catchsym$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$2
__ehfuncinfo$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
	DD	01H
	DD	FLAT:__tryblocktable$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
__Next$ = -20						; size = 4
__$EHRec$ = -16						; size = 16
__First$ = 8						; size = 4
__Count$ = 12						; size = 4
__Val$ = 16						; size = 4
__Al$ = 20						; size = 4
___formal$ = 24						; size = 1
___formal$ = 28						; size = 1
??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Uninit_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT

; 389  : 	{	// copy _Count *_Val to raw _First, using _Al, arbitrary type

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	51		 push	 ecx
  00013	53		 push	 ebx
  00014	56		 push	 esi
  00015	57		 push	 edi
  00016	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001b	33 c5		 xor	 eax, ebp
  0001d	50		 push	 eax
  0001e	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp+4]
  00021	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00027	89 65 f0	 mov	 DWORD PTR __$EHRec$[ebp], esp

; 390  : 
; 391  :  #if _HAS_ITERATOR_DEBUGGING
; 392  : //	if (_Count < 0)
; 393  : //		_DEBUG_ERROR("negative count in uninitialized fill");
; 394  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 395  : 
; 396  : 	_FwdIt _Next = _First;

  0002a	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  0002d	89 45 ec	 mov	 DWORD PTR __Next$[ebp], eax

; 397  : 
; 398  : 	_TRY_BEGIN

  00030	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 0

; 399  : 	for (; 0 < _Count; --_Count, ++_First)

  00037	eb 12		 jmp	 SHORT $LN6@Uninit_fil@32
$LN5@Uninit_fil@32:
  00039	8b 4d 0c	 mov	 ecx, DWORD PTR __Count$[ebp]
  0003c	83 e9 01	 sub	 ecx, 1
  0003f	89 4d 0c	 mov	 DWORD PTR __Count$[ebp], ecx
  00042	8b 55 08	 mov	 edx, DWORD PTR __First$[ebp]
  00045	83 c2 08	 add	 edx, 8
  00048	89 55 08	 mov	 DWORD PTR __First$[ebp], edx
$LN6@Uninit_fil@32:
  0004b	83 7d 0c 00	 cmp	 DWORD PTR __Count$[ebp], 0
  0004f	76 12		 jbe	 SHORT $LN4@Uninit_fil@32

; 400  : 		_Al.construct(_First, _Val);

  00051	8b 45 10	 mov	 eax, DWORD PTR __Val$[ebp]
  00054	50		 push	 eax
  00055	8b 4d 08	 mov	 ecx, DWORD PTR __First$[ebp]
  00058	51		 push	 ecx
  00059	8b 4d 14	 mov	 ecx, DWORD PTR __Al$[ebp]
  0005c	e8 00 00 00 00	 call	 ?construct@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@ABV3@@Z ; std::allocator<SmartPtr<CSettingGroup> >::construct
  00061	eb d6		 jmp	 SHORT $LN5@Uninit_fil@32
$LN4@Uninit_fil@32:
  00063	eb 37		 jmp	 SHORT $LN10@Uninit_fil@32
__catch$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$0:

; 401  : 	_CATCH_ALL
; 402  : 	for (; _Next != _First; ++_Next)

  00065	eb 09		 jmp	 SHORT $LN3@Uninit_fil@32
$LN2@Uninit_fil@32:
  00067	8b 55 ec	 mov	 edx, DWORD PTR __Next$[ebp]
  0006a	83 c2 08	 add	 edx, 8
  0006d	89 55 ec	 mov	 DWORD PTR __Next$[ebp], edx
$LN3@Uninit_fil@32:
  00070	8b 45 ec	 mov	 eax, DWORD PTR __Next$[ebp]
  00073	3b 45 08	 cmp	 eax, DWORD PTR __First$[ebp]
  00076	74 0e		 je	 SHORT $LN1@Uninit_fil@32

; 403  : 		_Al.destroy(_Next);

  00078	8b 4d ec	 mov	 ecx, DWORD PTR __Next$[ebp]
  0007b	51		 push	 ecx
  0007c	8b 4d 14	 mov	 ecx, DWORD PTR __Al$[ebp]
  0007f	e8 00 00 00 00	 call	 ?destroy@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::allocator<SmartPtr<CSettingGroup> >::destroy
  00084	eb e1		 jmp	 SHORT $LN2@Uninit_fil@32
$LN1@Uninit_fil@32:

; 404  : 	_RERAISE;

  00086	6a 00		 push	 0
  00088	6a 00		 push	 0
  0008a	e8 00 00 00 00	 call	 __CxxThrowException@8

; 405  : 	_CATCH_END

  0008f	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
  00096	b8 00 00 00 00	 mov	 eax, $LN9@Uninit_fil@32
  0009b	c3		 ret	 0
$LN10@Uninit_fil@32:
  0009c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
$LN9@Uninit_fil@32:

; 406  : 	}

  000a3	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp+4]
  000a6	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000ad	59		 pop	 ecx
  000ae	5f		 pop	 edi
  000af	5e		 pop	 esi
  000b0	5b		 pop	 ebx
  000b1	8b e5		 mov	 esp, ebp
  000b3	5d		 pop	 ebp
  000b4	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__ehhandler$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z:
  00000	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00004	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00007	8b 4a e8	 mov	 ecx, DWORD PTR [edx-24]
  0000a	33 c8		 xor	 ecx, eax
  0000c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00011	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
  00016	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Uninit_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ??$fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Val$ = 16						; size = 4
??$fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z PROC ; std::fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >, COMDAT

; 3160 : 	{	// copy _Val through [_First, _Last)

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp

; 3161 : 	_Fill(_CHECKED_BASE(_First), _CHECKED_BASE(_Last), _Val);

  00003	8b 45 10	 mov	 eax, DWORD PTR __Val$[ebp]
  00006	50		 push	 eax
  00007	8d 4d 0c	 lea	 ecx, DWORD PTR __Last$[ebp]
  0000a	51		 push	 ecx
  0000b	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00010	83 c4 04	 add	 esp, 4
  00013	50		 push	 eax
  00014	8d 55 08	 lea	 edx, DWORD PTR __First$[ebp]
  00017	52		 push	 edx
  00018	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  0001d	83 c4 04	 add	 esp, 4
  00020	50		 push	 eax
  00021	e8 00 00 00 00	 call	 ??$_Fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z ; std::_Fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >
  00026	83 c4 0c	 add	 esp, 12			; 0000000cH

; 3162 : 	}

  00029	5d		 pop	 ebp
  0002a	c3		 ret	 0
??$fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z ENDP ; std::fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@@Z
_TEXT	SEGMENT
$T352073 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Al$ = 16						; size = 4
??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@@Z PROC ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >, COMDAT

; 224  : 	{	// destroy [_First, _Last)

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 225  : 	_Destroy_range(_First, _Last, _Al, _Ptr_cat(_First, _Last));

  00004	8d 45 0c	 lea	 eax, DWORD PTR __Last$[ebp]
  00007	50		 push	 eax
  00008	8d 4d 08	 lea	 ecx, DWORD PTR __First$[ebp]
  0000b	51		 push	 ecx
  0000c	e8 00 00 00 00	 call	 ??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::_Ptr_cat<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
  00011	83 c4 08	 add	 esp, 8
  00014	88 45 ff	 mov	 BYTE PTR $T352073[ebp], al
  00017	0f b6 55 ff	 movzx	 edx, BYTE PTR $T352073[ebp]
  0001b	52		 push	 edx
  0001c	8b 45 10	 mov	 eax, DWORD PTR __Al$[ebp]
  0001f	50		 push	 eax
  00020	8b 4d 0c	 mov	 ecx, DWORD PTR __Last$[ebp]
  00023	51		 push	 ecx
  00024	8b 55 08	 mov	 edx, DWORD PTR __First$[ebp]
  00027	52		 push	 edx
  00028	e8 00 00 00 00	 call	 ??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >
  0002d	83 c4 10	 add	 esp, 16			; 00000010H

; 226  : 	}

  00030	8b e5		 mov	 esp, ebp
  00032	5d		 pop	 ebp
  00033	c3		 ret	 0
??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@@Z ENDP ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\memory
_TEXT	ENDS
;	COMDAT ??$unchecked_uninitialized_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z
_TEXT	SEGMENT
$T352077 = -2						; size = 1
$T352076 = -1						; size = 1
__First$ = 8						; size = 4
__Count$ = 12						; size = 4
__Val$ = 16						; size = 4
__Al$ = 20						; size = 4
??$unchecked_uninitialized_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z PROC ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT

; 920  : 	{	// copy _Count *_Val to raw _First, using _Al

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 921  : 		_STD _Uninit_fill_n(_First, _Count, _Val, _Al,
; 922  : 			_STD _Ptr_cat(_First, _First), _STD _Range_checked_iterator_tag());

  00004	33 c0		 xor	 eax, eax
  00006	88 45 ff	 mov	 BYTE PTR $T352076[ebp], al
  00009	8d 4d 08	 lea	 ecx, DWORD PTR __First$[ebp]
  0000c	51		 push	 ecx
  0000d	8d 55 08	 lea	 edx, DWORD PTR __First$[ebp]
  00010	52		 push	 edx
  00011	e8 00 00 00 00	 call	 ??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::_Ptr_cat<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
  00016	83 c4 08	 add	 esp, 8
  00019	88 45 fe	 mov	 BYTE PTR $T352077[ebp], al
  0001c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T352076[ebp]
  00020	50		 push	 eax
  00021	0f b6 4d fe	 movzx	 ecx, BYTE PTR $T352077[ebp]
  00025	51		 push	 ecx
  00026	8b 55 14	 mov	 edx, DWORD PTR __Al$[ebp]
  00029	52		 push	 edx
  0002a	8b 45 10	 mov	 eax, DWORD PTR __Val$[ebp]
  0002d	50		 push	 eax
  0002e	8b 4d 0c	 mov	 ecx, DWORD PTR __Count$[ebp]
  00031	51		 push	 ecx
  00032	8b 55 08	 mov	 edx, DWORD PTR __First$[ebp]
  00035	52		 push	 edx
  00036	e8 00 00 00 00	 call	 ??$_Uninit_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
  0003b	83 c4 18	 add	 esp, 24			; 00000018H

; 923  : 	}

  0003e	8b e5		 mov	 esp, ebp
  00040	5d		 pop	 ebp
  00041	c3		 ret	 0
??$unchecked_uninitialized_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ENDP ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Destroy, COMDAT
; _this$ = ecx

; 1123 : 		{	// destroy [_First, _Last) using allocator

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 1124 : 		_Destroy_range(_First, _Last, this->_Alval);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	83 c0 08	 add	 eax, 8
  0000d	50		 push	 eax
  0000e	8b 4d 0c	 mov	 ecx, DWORD PTR __Last$[ebp]
  00011	51		 push	 ecx
  00012	8b 55 08	 mov	 edx, DWORD PTR __First$[ebp]
  00015	52		 push	 edx
  00016	e8 00 00 00 00	 call	 ??$_Destroy_range@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CSettingGroup> > >
  0001b	83 c4 0c	 add	 esp, 12			; 0000000cH

; 1125 : 		}

  0001e	8b e5		 mov	 esp, ebp
  00020	5d		 pop	 ebp
  00021	c2 08 00	 ret	 8
?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Destroy
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Ufill@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV3@IABV3@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
__Count$ = 12						; size = 4
__Val$ = 16						; size = 4
?_Ufill@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV3@IABV3@@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Ufill, COMDAT
; _this$ = ecx

; 1251 : 		{	// copy initializing _Count * _Val, using allocator

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 1252 : 		_STDEXT unchecked_uninitialized_fill_n(_Ptr, _Count, _Val, this->_Alval);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	83 c0 08	 add	 eax, 8
  0000d	50		 push	 eax
  0000e	8b 4d 10	 mov	 ecx, DWORD PTR __Val$[ebp]
  00011	51		 push	 ecx
  00012	8b 55 0c	 mov	 edx, DWORD PTR __Count$[ebp]
  00015	52		 push	 edx
  00016	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  00019	50		 push	 eax
  0001a	e8 00 00 00 00	 call	 ??$unchecked_uninitialized_fill_n@PAV?$SmartPtr@VCSettingGroup@@@@IV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCSettingGroup@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CSettingGroup> *,unsigned int,SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
  0001f	83 c4 10	 add	 esp, 16			; 00000010H

; 1253 : 		return (_Ptr + _Count);

  00022	8b 4d 0c	 mov	 ecx, DWORD PTR __Count$[ebp]
  00025	8b 55 08	 mov	 edx, DWORD PTR __Ptr$[ebp]
  00028	8d 04 ca	 lea	 eax, DWORD PTR [edx+ecx*8]

; 1254 : 		}

  0002b	8b e5		 mov	 esp, ebp
  0002d	5d		 pop	 ebp
  0002e	c2 0c 00	 ret	 12			; 0000000cH
?_Ufill@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV3@IABV3@@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Ufill
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Tidy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?_Tidy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXXZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Tidy, COMDAT
; _this$ = ecx

; 1128 : 		{	// free all storage

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 1129 : 		if (_Myfirst != 0)

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	83 78 0c 00	 cmp	 DWORD PTR [eax+12], 0
  0000e	74 38		 je	 SHORT $LN1@Tidy@52

; 1130 : 			{	// something to free, destroy and deallocate it
; 1131 : 
; 1132 :  #if _HAS_ITERATOR_DEBUGGING
; 1133 : 			this->_Orphan_all();
; 1134 :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 1135 : 
; 1136 : 			_Destroy(_Myfirst, _Mylast);

  00010	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00013	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  00016	52		 push	 edx
  00017	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001a	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  0001d	51		 push	 ecx
  0001e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00021	e8 00 00 00 00	 call	 ?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Destroy

; 1137 : 			this->_Alval.deallocate(_Myfirst, _Myend - _Myfirst);

  00026	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00029	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0002c	8b 4a 14	 mov	 ecx, DWORD PTR [edx+20]
  0002f	2b 48 0c	 sub	 ecx, DWORD PTR [eax+12]
  00032	c1 f9 03	 sar	 ecx, 3
  00035	51		 push	 ecx
  00036	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00039	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  0003c	50		 push	 eax
  0003d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00040	83 c1 08	 add	 ecx, 8
  00043	e8 00 00 00 00	 call	 ?deallocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::allocator<SmartPtr<CSettingGroup> >::deallocate
$LN1@Tidy@52:

; 1138 : 			}
; 1139 : 		_Myfirst = 0, _Mylast = 0, _Myend = 0;

  00048	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0004b	c7 41 0c 00 00
	00 00		 mov	 DWORD PTR [ecx+12], 0
  00052	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00055	c7 42 10 00 00
	00 00		 mov	 DWORD PTR [edx+16], 0
  0005c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0005f	c7 40 14 00 00
	00 00		 mov	 DWORD PTR [eax+20], 0

; 1140 : 		}

  00066	8b e5		 mov	 esp, ebp
  00068	5d		 pop	 ebp
  00069	c3		 ret	 0
?_Tidy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXXZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Tidy
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ$0
__ehfuncinfo$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT
; _this$ = ecx

; 558  : 		{	// destroy the object

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 559  : 		_Tidy();

  0002d	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00030	e8 00 00 00 00	 call	 ?_Tidy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Tidy

; 560  : 		}

  00035	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0003c	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003f	e8 00 00 00 00	 call	 ??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
  00044	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00047	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0004e	59		 pop	 ecx
  0004f	8b e5		 mov	 esp, ebp
  00051	5d		 pop	 ebp
  00052	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$_Vector_val@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
__ehhandler$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
PUBLIC	?ParseAllSettings@CSettingsMaster@@AAEXH@Z	; CSettingsMaster::ParseAllSettings
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\settingsmaster.cpp
;	COMDAT ?ParseAllSettings@CSettingsMaster@@AAEXH@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
_i$151943 = -4						; size = 4
_IsLoad$ = 8						; size = 4
?ParseAllSettings@CSettingsMaster@@AAEXH@Z PROC		; CSettingsMaster::ParseAllSettings, COMDAT
; _this$ = ecx

; 181  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 08	 sub	 esp, 8
  00006	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 182  :     for (int i = 0; i < m_Holders.size(); i++)

  00009	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _i$151943[ebp], 0
  00010	eb 09		 jmp	 SHORT $LN3@ParseAllSe
$LN2@ParseAllSe:
  00012	8b 45 fc	 mov	 eax, DWORD PTR _i$151943[ebp]
  00015	83 c0 01	 add	 eax, 1
  00018	89 45 fc	 mov	 DWORD PTR _i$151943[ebp], eax
$LN3@ParseAllSe:
  0001b	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0001e	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::size
  00023	39 45 fc	 cmp	 DWORD PTR _i$151943[ebp], eax
  00026	73 22		 jae	 SHORT $LN1@ParseAllSe

; 183  :     {
; 184  :         ParseSettingHolder(m_Holders[i].GetRawPointer(), IsLoad);

  00028	8b 4d 08	 mov	 ecx, DWORD PTR _IsLoad$[ebp]
  0002b	51		 push	 ecx
  0002c	8b 55 fc	 mov	 edx, DWORD PTR _i$151943[ebp]
  0002f	52		 push	 edx
  00030	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00033	e8 00 00 00 00	 call	 ??A?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingsHolder@@@@I@Z ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator[]
  00038	8b c8		 mov	 ecx, eax
  0003a	e8 00 00 00 00	 call	 ?GetRawPointer@?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::GetRawPointer
  0003f	50		 push	 eax
  00040	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00043	e8 00 00 00 00	 call	 ?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z ; CSettingsMaster::ParseSettingHolder

; 185  :     }

  00048	eb c8		 jmp	 SHORT $LN2@ParseAllSe
$LN1@ParseAllSe:

; 186  :     ParseSettingHolder(Providers_GetCurrentSource(), IsLoad);

  0004a	8b 45 08	 mov	 eax, DWORD PTR _IsLoad$[ebp]
  0004d	50		 push	 eax
  0004e	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00053	50		 push	 eax
  00054	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00057	e8 00 00 00 00	 call	 ?ParseSettingHolder@CSettingsMaster@@AAEXPAVCSettingsHolder@@H@Z ; CSettingsMaster::ParseSettingHolder

; 187  : }

  0005c	8b e5		 mov	 esp, ebp
  0005e	5d		 pop	 ebp
  0005f	c2 04 00	 ret	 4
?ParseAllSettings@CSettingsMaster@@AAEXH@Z ENDP		; CSettingsMaster::ParseAllSettings
_TEXT	ENDS
PUBLIC	??1CSettingsMaster@@QAE@XZ			; CSettingsMaster::~CSettingsMaster
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CSettingsMaster@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$1
	DD	01H
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$2
	DD	02H
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$3
	DD	03H
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$4
	DD	04H
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$5
	DD	05H
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$6
	DD	06H
	DD	FLAT:__unwindfunclet$??1CSettingsMaster@@QAE@XZ$7
__ehfuncinfo$??1CSettingsMaster@@QAE@XZ DD 019930522H
	DD	08H
	DD	FLAT:__unwindtable$??1CSettingsMaster@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CSettingsMaster@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CSettingsMaster@@QAE@XZ PROC				; CSettingsMaster::~CSettingsMaster, COMDAT
; _this$ = ecx

; 69   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??1CSettingsMaster@@QAE@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	c7 45 fc 07 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 7

; 70   : }

  0002d	c6 45 fc 06	 mov	 BYTE PTR __$EHRec$[ebp+8], 6
  00031	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  0003a	e8 00 00 00 00	 call	 ??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
  0003f	c6 45 fc 05	 mov	 BYTE PTR __$EHRec$[ebp+8], 5
  00043	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00046	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  0004c	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00051	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  00055	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00058	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  0005e	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00063	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  00067	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0006a	83 c1 6c	 add	 ecx, 108		; 0000006cH
  0006d	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00072	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  00076	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00079	83 c1 50	 add	 ecx, 80			; 00000050H
  0007c	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00081	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00085	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00088	83 c1 34	 add	 ecx, 52			; 00000034H
  0008b	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00090	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00094	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00097	83 c1 18	 add	 ecx, 24			; 00000018H
  0009a	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0009f	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000a6	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  000a9	e8 00 00 00 00	 call	 ??1?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::~vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >
  000ae	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000b1	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000b8	59		 pop	 ecx
  000b9	8b e5		 mov	 esp, ebp
  000bb	5d		 pop	 ebp
  000bc	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::~vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 18	 add	 ecx, 24			; 00000018H
  0000e	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$2:
  00013	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 c1 34	 add	 ecx, 52			; 00000034H
  00019	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$3:
  0001e	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00021	83 c1 50	 add	 ecx, 80			; 00000050H
  00024	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$4:
  00029	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002c	83 c1 6c	 add	 ecx, 108		; 0000006cH
  0002f	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$5:
  00034	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00037	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  0003d	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$6:
  00042	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00045	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  0004b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??1CSettingsMaster@@QAE@XZ$7:
  00050	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00053	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  00059	e9 00 00 00 00	 jmp	 ??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
__ehhandler$??1CSettingsMaster@@QAE@XZ:
  0005e	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00062	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00065	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00068	33 c8		 xor	 ecx, eax
  0006a	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0006f	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1CSettingsMaster@@QAE@XZ
  00074	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CSettingsMaster@@QAE@XZ ENDP				; CSettingsMaster::~CSettingsMaster
PUBLIC	??0CSettingsMaster@@QAE@PB_W@Z			; CSettingsMaster::CSettingsMaster
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CSettingsMaster@@QAE@PB_W@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$2
	DD	02H
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$3
	DD	03H
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$4
	DD	04H
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$5
	DD	05H
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$6
	DD	06H
	DD	FLAT:__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$7
__ehfuncinfo$??0CSettingsMaster@@QAE@PB_W@Z DD 019930522H
	DD	08H
	DD	FLAT:__unwindtable$??0CSettingsMaster@@QAE@PB_W@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CSettingsMaster@@QAE@PB_W@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_szIniFile$ = 8						; size = 4
??0CSettingsMaster@@QAE@PB_W@Z PROC			; CSettingsMaster::CSettingsMaster, COMDAT
; _this$ = ecx

; 65   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CSettingsMaster@@QAE@PB_W@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00029	e8 00 00 00 00	 call	 ??0?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 08	 mov	 eax, DWORD PTR _szIniFile$[ebp]
  00038	50		 push	 eax
  00039	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	83 c1 18	 add	 ecx, 24			; 00000018H
  0003f	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00044	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00048	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0004b	83 c1 34	 add	 ecx, 52			; 00000034H
  0004e	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00053	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  00057	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0005a	83 c1 50	 add	 ecx, 80			; 00000050H
  0005d	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00062	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  00066	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00069	83 c1 6c	 add	 ecx, 108		; 0000006cH
  0006c	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00071	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  00075	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00078	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  0007e	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00083	c6 45 fc 05	 mov	 BYTE PTR __$EHRec$[ebp+8], 5
  00087	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0008a	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  00090	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00095	c6 45 fc 06	 mov	 BYTE PTR __$EHRec$[ebp+8], 6
  00099	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0009c	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  000a2	e8 00 00 00 00	 call	 ??0?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
  000a7	c6 45 fc 07	 mov	 BYTE PTR __$EHRec$[ebp+8], 7

; 66   : }

  000ab	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000b2	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  000b5	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000b8	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000bf	59		 pop	 ecx
  000c0	8b e5		 mov	 esp, ebp
  000c2	5d		 pop	 ebp
  000c3	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::~vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 18	 add	 ecx, 24			; 00000018H
  0000e	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$2:
  00013	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 c1 34	 add	 ecx, 52			; 00000034H
  00019	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$3:
  0001e	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00021	83 c1 50	 add	 ecx, 80			; 00000050H
  00024	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$4:
  00029	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002c	83 c1 6c	 add	 ecx, 108		; 0000006cH
  0002f	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$5:
  00034	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00037	81 c1 88 00 00
	00		 add	 ecx, 136		; 00000088H
  0003d	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$6:
  00042	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00045	81 c1 a4 00 00
	00		 add	 ecx, 164		; 000000a4H
  0004b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$??0CSettingsMaster@@QAE@PB_W@Z$7:
  00050	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00053	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  00059	e9 00 00 00 00	 jmp	 ??1?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::~vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >
__ehhandler$??0CSettingsMaster@@QAE@PB_W@Z:
  0005e	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00062	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00065	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00068	33 c8		 xor	 ecx, eax
  0006a	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0006f	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0CSettingsMaster@@QAE@PB_W@Z
  00074	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CSettingsMaster@@QAE@PB_W@Z ENDP			; CSettingsMaster::CSettingsMaster
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\memory
xdata$x	SEGMENT
__unwindtable$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
__catchsym$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$2 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$0
__tryblocktable$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z DD 00H
	DD	00H
	DD	01H
	DD	01H
	DD	FLAT:__catchsym$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$2
__ehfuncinfo$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
	DD	01H
	DD	FLAT:__tryblocktable$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
__Next$ = -20						; size = 4
__$EHRec$ = -16						; size = 16
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
__Al$ = 20						; size = 4
___formal$ = 24						; size = 1
___formal$ = 28						; size = 1
??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Uninit_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT

; 122  : 	{	// copy [_First, _Last) to raw _Dest, using _Al, arbitrary type

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	51		 push	 ecx
  00013	53		 push	 ebx
  00014	56		 push	 esi
  00015	57		 push	 edi
  00016	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001b	33 c5		 xor	 eax, ebp
  0001d	50		 push	 eax
  0001e	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp+4]
  00021	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00027	89 65 f0	 mov	 DWORD PTR __$EHRec$[ebp], esp

; 123  : 	_DEBUG_RANGE(_First, _Last);
; 124  : 	_DEBUG_POINTER(_Dest);
; 125  : 	_FwdIt _Next = _Dest;

  0002a	8b 45 10	 mov	 eax, DWORD PTR __Dest$[ebp]
  0002d	89 45 ec	 mov	 DWORD PTR __Next$[ebp], eax

; 126  : 
; 127  : 	_TRY_BEGIN

  00030	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 0

; 128  : 	for (; _First != _Last; ++_Dest, ++_First)

  00037	eb 12		 jmp	 SHORT $LN6@Uninit_cop@53
$LN5@Uninit_cop@53:
  00039	8b 4d 10	 mov	 ecx, DWORD PTR __Dest$[ebp]
  0003c	83 c1 08	 add	 ecx, 8
  0003f	89 4d 10	 mov	 DWORD PTR __Dest$[ebp], ecx
  00042	8b 55 08	 mov	 edx, DWORD PTR __First$[ebp]
  00045	83 c2 08	 add	 edx, 8
  00048	89 55 08	 mov	 DWORD PTR __First$[ebp], edx
$LN6@Uninit_cop@53:
  0004b	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  0004e	3b 45 0c	 cmp	 eax, DWORD PTR __Last$[ebp]
  00051	74 12		 je	 SHORT $LN4@Uninit_cop@53

; 129  : 		_Al.construct(_Dest, *_First);

  00053	8b 4d 08	 mov	 ecx, DWORD PTR __First$[ebp]
  00056	51		 push	 ecx
  00057	8b 55 10	 mov	 edx, DWORD PTR __Dest$[ebp]
  0005a	52		 push	 edx
  0005b	8b 4d 14	 mov	 ecx, DWORD PTR __Al$[ebp]
  0005e	e8 00 00 00 00	 call	 ?construct@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@ABV3@@Z ; std::allocator<SmartPtr<CSettingGroup> >::construct
  00063	eb d4		 jmp	 SHORT $LN5@Uninit_cop@53
$LN4@Uninit_cop@53:
  00065	eb 37		 jmp	 SHORT $LN10@Uninit_cop@53
__catch$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$0:

; 130  : 	_CATCH_ALL
; 131  : 	for (; _Next != _Dest; ++_Next)

  00067	eb 09		 jmp	 SHORT $LN3@Uninit_cop@53
$LN2@Uninit_cop@53:
  00069	8b 45 ec	 mov	 eax, DWORD PTR __Next$[ebp]
  0006c	83 c0 08	 add	 eax, 8
  0006f	89 45 ec	 mov	 DWORD PTR __Next$[ebp], eax
$LN3@Uninit_cop@53:
  00072	8b 4d ec	 mov	 ecx, DWORD PTR __Next$[ebp]
  00075	3b 4d 10	 cmp	 ecx, DWORD PTR __Dest$[ebp]
  00078	74 0e		 je	 SHORT $LN1@Uninit_cop@53

; 132  : 		_Al.destroy(_Next);

  0007a	8b 55 ec	 mov	 edx, DWORD PTR __Next$[ebp]
  0007d	52		 push	 edx
  0007e	8b 4d 14	 mov	 ecx, DWORD PTR __Al$[ebp]
  00081	e8 00 00 00 00	 call	 ?destroy@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::allocator<SmartPtr<CSettingGroup> >::destroy
  00086	eb e1		 jmp	 SHORT $LN2@Uninit_cop@53
$LN1@Uninit_cop@53:

; 133  : 	_RERAISE;

  00088	6a 00		 push	 0
  0008a	6a 00		 push	 0
  0008c	e8 00 00 00 00	 call	 __CxxThrowException@8

; 134  : 	_CATCH_END

  00091	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
  00098	b8 00 00 00 00	 mov	 eax, __tryend$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$1
  0009d	c3		 ret	 0
$LN10@Uninit_cop@53:
  0009e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
__tryend$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$1:

; 135  : 	return (_Dest);

  000a5	8b 45 10	 mov	 eax, DWORD PTR __Dest$[ebp]
$LN9@Uninit_cop@53:

; 136  : 	}

  000a8	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp+4]
  000ab	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000b2	59		 pop	 ecx
  000b3	5f		 pop	 edi
  000b4	5e		 pop	 esi
  000b5	5b		 pop	 ebx
  000b6	8b e5		 mov	 esp, ebp
  000b8	5d		 pop	 ebp
  000b9	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__ehhandler$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z:
  00000	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00004	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00007	8b 4a e8	 mov	 ecx, DWORD PTR [edx-24]
  0000a	33 c8		 xor	 ecx, eax
  0000c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00011	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
  00016	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Uninit_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
___formal$ = 20						; size = 1
___formal$ = 24						; size = 1
___formal$ = 28						; size = 1
??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::forward_iterator_tag>, COMDAT

; 2647 : 	{	// copy [_First, _Last) backwards to [..., _Dest), arbitrary iterators

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
$LN2@Copy_backw@45:

; 2648 : 	_DEBUG_RANGE(_First, _Last);
; 2649 : 	while (_First != _Last)

  00003	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  00006	3b 45 0c	 cmp	 eax, DWORD PTR __Last$[ebp]
  00009	74 20		 je	 SHORT $LN1@Copy_backw@45

; 2650 : 		*--_Dest = *--_Last;

  0000b	8b 4d 0c	 mov	 ecx, DWORD PTR __Last$[ebp]
  0000e	83 e9 08	 sub	 ecx, 8
  00011	89 4d 0c	 mov	 DWORD PTR __Last$[ebp], ecx
  00014	8b 55 10	 mov	 edx, DWORD PTR __Dest$[ebp]
  00017	83 ea 08	 sub	 edx, 8
  0001a	89 55 10	 mov	 DWORD PTR __Dest$[ebp], edx
  0001d	8b 45 0c	 mov	 eax, DWORD PTR __Last$[ebp]
  00020	50		 push	 eax
  00021	8b 4d 10	 mov	 ecx, DWORD PTR __Dest$[ebp]
  00024	e8 00 00 00 00	 call	 ??4?$SmartPtr@VCSettingGroup@@@@QAEAAV0@ABV0@@Z ; SmartPtr<CSettingGroup>::operator=
  00029	eb d8		 jmp	 SHORT $LN2@Copy_backw@45
$LN1@Copy_backw@45:

; 2651 : 	return (_Dest);

  0002b	8b 45 10	 mov	 eax, DWORD PTR __Dest$[ebp]

; 2652 : 	}

  0002e	5d		 pop	 ebp
  0002f	c3		 ret	 0
??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::forward_iterator_tag>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\memory
_TEXT	ENDS
;	COMDAT ??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z
_TEXT	SEGMENT
$T353784 = -2						; size = 1
$T353783 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
__Al$ = 20						; size = 4
??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z PROC ; stdext::unchecked_uninitialized_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT

; 809  : 	{	// copy [_First, _Last) to raw _Dest, using _Al

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 810  : 		return (_STD _Uninit_copy(_CHECKED_BASE(_First), _CHECKED_BASE(_Last), _Dest, _Al,
; 811  : 			_STD _Ptr_cat(_First, _Dest), _STD _Range_checked_iterator_tag()));

  00004	33 c0		 xor	 eax, eax
  00006	88 45 ff	 mov	 BYTE PTR $T353783[ebp], al
  00009	8d 4d 10	 lea	 ecx, DWORD PTR __Dest$[ebp]
  0000c	51		 push	 ecx
  0000d	8d 55 08	 lea	 edx, DWORD PTR __First$[ebp]
  00010	52		 push	 edx
  00011	e8 00 00 00 00	 call	 ??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::_Ptr_cat<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
  00016	83 c4 08	 add	 esp, 8
  00019	88 45 fe	 mov	 BYTE PTR $T353784[ebp], al
  0001c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T353783[ebp]
  00020	50		 push	 eax
  00021	0f b6 4d fe	 movzx	 ecx, BYTE PTR $T353784[ebp]
  00025	51		 push	 ecx
  00026	8b 55 14	 mov	 edx, DWORD PTR __Al$[ebp]
  00029	52		 push	 edx
  0002a	8b 45 10	 mov	 eax, DWORD PTR __Dest$[ebp]
  0002d	50		 push	 eax
  0002e	8d 4d 0c	 lea	 ecx, DWORD PTR __Last$[ebp]
  00031	51		 push	 ecx
  00032	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00037	83 c4 04	 add	 esp, 4
  0003a	50		 push	 eax
  0003b	8d 55 08	 lea	 edx, DWORD PTR __First$[ebp]
  0003e	52		 push	 edx
  0003f	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00044	83 c4 04	 add	 esp, 4
  00047	50		 push	 eax
  00048	e8 00 00 00 00	 call	 ??$_Uninit_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
  0004d	83 c4 18	 add	 esp, 24			; 00000018H

; 812  : 	}

  00050	8b e5		 mov	 esp, ebp
  00052	5d		 pop	 ebp
  00053	c3		 ret	 0
??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ENDP ; stdext::unchecked_uninitialized_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
$T353789 = -7						; size = 1
$T353788 = -6						; size = 1
$T353787 = -5						; size = 1
__Result$ = -4						; size = 4
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
___formal$ = 20						; size = 1
___formal$ = 24						; size = 1
___formal$ = 28						; size = 1
??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>, COMDAT

; 2659 : 	{	// copy [_First, _Last) backwards to [..., _Dest), arbitrary iterators

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 08	 sub	 esp, 8

; 2660 : 	// if _OutIt is range checked, this will make sure there is enough space for the copy
; 2661 : 	_OutIt _Result = _Dest - (_Last - _First);

  00006	8b 45 0c	 mov	 eax, DWORD PTR __Last$[ebp]
  00009	2b 45 08	 sub	 eax, DWORD PTR __First$[ebp]
  0000c	c1 f8 03	 sar	 eax, 3
  0000f	c1 e0 03	 shl	 eax, 3
  00012	8b 4d 10	 mov	 ecx, DWORD PTR __Dest$[ebp]
  00015	2b c8		 sub	 ecx, eax
  00017	89 4d fc	 mov	 DWORD PTR __Result$[ebp], ecx

; 2662 : 	_Copy_backward_opt(_First, _Last, _CHECKED_BASE(_Dest),
; 2663 : 		forward_iterator_tag(), _Nonscalar_ptr_iterator_tag(), _Range_checked_iterator_tag());

  0001a	33 d2		 xor	 edx, edx
  0001c	88 55 fb	 mov	 BYTE PTR $T353787[ebp], dl
  0001f	33 c0		 xor	 eax, eax
  00021	88 45 fa	 mov	 BYTE PTR $T353788[ebp], al
  00024	0f b6 4d fb	 movzx	 ecx, BYTE PTR $T353787[ebp]
  00028	51		 push	 ecx
  00029	0f b6 55 fa	 movzx	 edx, BYTE PTR $T353788[ebp]
  0002d	52		 push	 edx
  0002e	0f b6 45 f9	 movzx	 eax, BYTE PTR $T353789[ebp]
  00032	50		 push	 eax
  00033	8d 4d 10	 lea	 ecx, DWORD PTR __Dest$[ebp]
  00036	51		 push	 ecx
  00037	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  0003c	83 c4 04	 add	 esp, 4
  0003f	50		 push	 eax
  00040	8b 55 0c	 mov	 edx, DWORD PTR __Last$[ebp]
  00043	52		 push	 edx
  00044	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  00047	50		 push	 eax
  00048	e8 00 00 00 00	 call	 ??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::forward_iterator_tag>
  0004d	83 c4 18	 add	 esp, 24			; 00000018H

; 2664 : 	return _Result;

  00050	8b 45 fc	 mov	 eax, DWORD PTR __Result$[ebp]

; 2665 : 	}

  00053	8b e5		 mov	 esp, ebp
  00055	5d		 pop	 ebp
  00056	c3		 ret	 0
??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\memory
_TEXT	ENDS
;	COMDAT ??$_Uninit_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
__Al$ = 20						; size = 4
___formal$ = 24						; size = 1
___formal$ = 28						; size = 1
??$_Uninit_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Uninit_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> >,std::_Undefined_move_tag>, COMDAT

; 204  : 	{	// move defaults to copy if there is not a more effecient way

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp

; 205  : 	return _STDEXT unchecked_uninitialized_copy(_First, _Last, _Dest, _Al);

  00003	8b 45 14	 mov	 eax, DWORD PTR __Al$[ebp]
  00006	50		 push	 eax
  00007	8b 4d 10	 mov	 ecx, DWORD PTR __Dest$[ebp]
  0000a	51		 push	 ecx
  0000b	8b 55 0c	 mov	 edx, DWORD PTR __Last$[ebp]
  0000e	52		 push	 edx
  0000f	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 ??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ; stdext::unchecked_uninitialized_copy<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
  00018	83 c4 10	 add	 esp, 16			; 00000010H

; 206  : 	}

  0001b	5d		 pop	 ebp
  0001c	c3		 ret	 0
??$_Uninit_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Uninit_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> >,std::_Undefined_move_tag>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??$_Move_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
$T353795 = -2						; size = 1
$T353794 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
__First_dest_cat$ = 20					; size = 1
___formal$ = 24						; size = 1
___formal$ = 28						; size = 1
??$_Move_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Move_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::random_access_iterator_tag,std::_Undefined_move_tag>, COMDAT

; 2726 : 	{	// move defaults to copy if there is not a more effecient way

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 2727 : 	return _Copy_backward_opt(_First, _Last, _Dest,
; 2728 : 		_First_dest_cat, _Ptr_cat(_First, _Dest), _Range_checked_iterator_tag());

  00004	33 c0		 xor	 eax, eax
  00006	88 45 ff	 mov	 BYTE PTR $T353794[ebp], al
  00009	8d 4d 10	 lea	 ecx, DWORD PTR __Dest$[ebp]
  0000c	51		 push	 ecx
  0000d	8d 55 08	 lea	 edx, DWORD PTR __First$[ebp]
  00010	52		 push	 edx
  00011	e8 00 00 00 00	 call	 ??$_Ptr_cat@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::_Ptr_cat<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
  00016	83 c4 08	 add	 esp, 8
  00019	88 45 fe	 mov	 BYTE PTR $T353795[ebp], al
  0001c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T353794[ebp]
  00020	50		 push	 eax
  00021	0f b6 4d fe	 movzx	 ecx, BYTE PTR $T353795[ebp]
  00025	51		 push	 ecx
  00026	0f b6 55 14	 movzx	 edx, BYTE PTR __First_dest_cat$[ebp]
  0002a	52		 push	 edx
  0002b	8b 45 10	 mov	 eax, DWORD PTR __Dest$[ebp]
  0002e	50		 push	 eax
  0002f	8b 4d 0c	 mov	 ecx, DWORD PTR __Last$[ebp]
  00032	51		 push	 ecx
  00033	8b 55 08	 mov	 edx, DWORD PTR __First$[ebp]
  00036	52		 push	 edx
  00037	e8 00 00 00 00	 call	 ??$_Copy_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
  0003c	83 c4 18	 add	 esp, 24			; 00000018H

; 2729 : 	}

  0003f	8b e5		 mov	 esp, ebp
  00041	5d		 pop	 ebp
  00042	c3		 ret	 0
??$_Move_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Move_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::random_access_iterator_tag,std::_Undefined_move_tag>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\memory
_TEXT	ENDS
;	COMDAT ??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z
_TEXT	SEGMENT
$T353799 = -2						; size = 1
$T353798 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
__Al$ = 20						; size = 4
??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z PROC ; stdext::_Unchecked_uninitialized_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >, COMDAT

; 849  : 	{	// move [_First, _Last) to raw _Dest, using _Al

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 850  : 		return (_STD _Uninit_move(_CHECKED_BASE(_First), _CHECKED_BASE(_Last), _Dest, _Al,
; 851  : 			_STD _Move_cat(_Dest), _STD _Range_checked_iterator_tag()));

  00004	33 c0		 xor	 eax, eax
  00006	88 45 ff	 mov	 BYTE PTR $T353798[ebp], al
  00009	8d 4d 10	 lea	 ecx, DWORD PTR __Dest$[ebp]
  0000c	51		 push	 ecx
  0000d	e8 00 00 00 00	 call	 ??$_Move_cat@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::_Move_cat<SmartPtr<CSettingGroup> *>
  00012	83 c4 04	 add	 esp, 4
  00015	88 45 fe	 mov	 BYTE PTR $T353799[ebp], al
  00018	0f b6 55 ff	 movzx	 edx, BYTE PTR $T353798[ebp]
  0001c	52		 push	 edx
  0001d	0f b6 45 fe	 movzx	 eax, BYTE PTR $T353799[ebp]
  00021	50		 push	 eax
  00022	8b 4d 14	 mov	 ecx, DWORD PTR __Al$[ebp]
  00025	51		 push	 ecx
  00026	8b 55 10	 mov	 edx, DWORD PTR __Dest$[ebp]
  00029	52		 push	 edx
  0002a	8d 45 0c	 lea	 eax, DWORD PTR __Last$[ebp]
  0002d	50		 push	 eax
  0002e	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00033	83 c4 04	 add	 esp, 4
  00036	50		 push	 eax
  00037	8d 4d 08	 lea	 ecx, DWORD PTR __First$[ebp]
  0003a	51		 push	 ecx
  0003b	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00040	83 c4 04	 add	 esp, 4
  00043	50		 push	 eax
  00044	e8 00 00 00 00	 call	 ??$_Uninit_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> >,std::_Undefined_move_tag>
  00049	83 c4 18	 add	 esp, 24			; 00000018H

; 852  : 	}

  0004c	8b e5		 mov	 esp, ebp
  0004e	5d		 pop	 ebp
  0004f	c3		 ret	 0
??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ENDP ; stdext::_Unchecked_uninitialized_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??$_Unchecked_move_backward@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00@Z
_TEXT	SEGMENT
$T353804 = -3						; size = 1
$T353803 = -2						; size = 1
$T353802 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
??$_Unchecked_move_backward@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00@Z PROC ; stdext::_Unchecked_move_backward<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>, COMDAT

; 3668 : 	{	// move [_First, _Last) backwards to [..., _Dest)

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx

; 3669 : 		return (_STD _Move_backward_opt(_CHECKED_BASE(_First), _CHECKED_BASE(_Last), _Dest,
; 3670 : 			_STD _Iter_random(_First, _Dest), _STD _Move_cat(_Dest), _STD _Range_checked_iterator_tag()));

  00004	33 c0		 xor	 eax, eax
  00006	88 45 ff	 mov	 BYTE PTR $T353802[ebp], al
  00009	8d 4d 10	 lea	 ecx, DWORD PTR __Dest$[ebp]
  0000c	51		 push	 ecx
  0000d	e8 00 00 00 00	 call	 ??$_Move_cat@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@@Z ; std::_Move_cat<SmartPtr<CSettingGroup> *>
  00012	83 c4 04	 add	 esp, 4
  00015	88 45 fe	 mov	 BYTE PTR $T353803[ebp], al
  00018	0f b6 55 ff	 movzx	 edx, BYTE PTR $T353802[ebp]
  0001c	52		 push	 edx
  0001d	0f b6 45 fe	 movzx	 eax, BYTE PTR $T353803[ebp]
  00021	50		 push	 eax
  00022	8d 4d 10	 lea	 ecx, DWORD PTR __Dest$[ebp]
  00025	51		 push	 ecx
  00026	8d 55 08	 lea	 edx, DWORD PTR __First$[ebp]
  00029	52		 push	 edx
  0002a	8d 45 fd	 lea	 eax, DWORD PTR $T353804[ebp]
  0002d	50		 push	 eax
  0002e	e8 00 00 00 00	 call	 ??$_Iter_random@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::_Iter_random<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
  00033	83 c4 0c	 add	 esp, 12			; 0000000cH
  00036	0f b6 08	 movzx	 ecx, BYTE PTR [eax]
  00039	51		 push	 ecx
  0003a	8b 55 10	 mov	 edx, DWORD PTR __Dest$[ebp]
  0003d	52		 push	 edx
  0003e	8d 45 0c	 lea	 eax, DWORD PTR __Last$[ebp]
  00041	50		 push	 eax
  00042	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00047	83 c4 04	 add	 esp, 4
  0004a	50		 push	 eax
  0004b	8d 4d 08	 lea	 ecx, DWORD PTR __First$[ebp]
  0004e	51		 push	 ecx
  0004f	e8 00 00 00 00	 call	 ??$_Checked_base@PAV?$SmartPtr@VCSettingGroup@@@@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CSettingGroup> *>
  00054	83 c4 04	 add	 esp, 4
  00057	50		 push	 eax
  00058	e8 00 00 00 00	 call	 ??$_Move_backward_opt@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Move_backward_opt<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::random_access_iterator_tag,std::_Undefined_move_tag>
  0005d	83 c4 18	 add	 esp, 24			; 00000018H

; 3671 : 	}

  00060	8b e5		 mov	 esp, ebp
  00062	5d		 pop	 ebp
  00063	c3		 ret	 0
??$_Unchecked_move_backward@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00@Z ENDP ; stdext::_Unchecked_move_backward<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Ptr$ = 16						; size = 4
??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Umove<SmartPtr<CSettingGroup> *>, COMDAT
; _this$ = ecx

; 1150 : 		pointer _Umove(_Iter _First, _Iter _Last, pointer _Ptr)

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 1151 : 		{	// move initializing [_First, _Last), using allocator
; 1152 : 		return (_STDEXT _Unchecked_uninitialized_move(_First, _Last,
; 1153 : 			_Ptr, this->_Alval));

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	83 c0 08	 add	 eax, 8
  0000d	50		 push	 eax
  0000e	8b 4d 10	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  00011	51		 push	 ecx
  00012	8b 55 0c	 mov	 edx, DWORD PTR __Last$[ebp]
  00015	52		 push	 edx
  00016	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  00019	50		 push	 eax
  0001a	e8 00 00 00 00	 call	 ??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@Z ; stdext::_Unchecked_uninitialized_move<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *,std::allocator<SmartPtr<CSettingGroup> > >
  0001f	83 c4 10	 add	 esp, 16			; 00000010H

; 1154 : 		}

  00022	8b e5		 mov	 esp, ebp
  00024	5d		 pop	 ebp
  00025	c2 0c 00	 ret	 12			; 0000000cH
??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Umove<SmartPtr<CSettingGroup> *>
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$4
	DD	02H
	DD	00H
	DD	02H
	DD	00H
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$5
__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$6 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$0
__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$7 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$2
__tryblocktable$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z DD 00H
	DD	00H
	DD	01H
	DD	01H
	DD	FLAT:__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$6
	DD	03H
	DD	03H
	DD	04H
	DD	01H
	DD	FLAT:__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$7
__ehfuncinfo$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z DD 019930522H
	DD	06H
	DD	FLAT:__unwindtable$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z
	DD	02H
	DD	FLAT:__tryblocktable$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z
_TEXT	SEGMENT
tv84 = -56						; size = 4
_this$ = -52						; size = 4
__Tmp$153013 = -48					; size = 8
__Oldend$153014 = -40					; size = 4
__Tmp$153003 = -36					; size = 8
__Newvec$152991 = -28					; size = 4
__Ptr$152992 = -24					; size = 4
__Capacity$ = -20					; size = 4
__$EHRec$ = -16						; size = 16
__Where$ = 8						; size = 8
__Count$ = 16						; size = 4
__Val$ = 20						; size = 4
?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Insert_n, COMDAT
; _this$ = ecx

; 1158 : 		{	// insert _Count * _Val at _Where

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	83 ec 28	 sub	 esp, 40			; 00000028H
  00015	53		 push	 ebx
  00016	56		 push	 esi
  00017	57		 push	 edi
  00018	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001d	33 c5		 xor	 eax, ebp
  0001f	50		 push	 eax
  00020	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp+4]
  00023	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00029	89 65 f0	 mov	 DWORD PTR __$EHRec$[ebp], esp
  0002c	89 4d cc	 mov	 DWORD PTR _this$[ebp], ecx

; 1159 : 
; 1160 :  #if _HAS_ITERATOR_DEBUGGING
; 1161 : 		if (_Where._Mycont != this
; 1162 : 			|| _Where._Myptr < _Myfirst || _Mylast < _Where._Myptr)
; 1163 : 			_DEBUG_ERROR("vector insert iterator outside range");
; 1164 :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 1165 : 
; 1166 : 		size_type _Capacity = capacity();

  0002f	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00032	e8 00 00 00 00	 call	 ?capacity@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::capacity
  00037	89 45 ec	 mov	 DWORD PTR __Capacity$[ebp], eax

; 1167 : 
; 1168 : 		if (_Count == 0)

  0003a	83 7d 10 00	 cmp	 DWORD PTR __Count$[ebp], 0
  0003e	75 05		 jne	 SHORT $LN12@Insert_n@45
  00040	e9 1e 03 00 00	 jmp	 $LN14@Insert_n@45
$LN12@Insert_n@45:

; 1169 : 			;
; 1170 : 		else if (max_size() - size() < _Count)

  00045	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00048	e8 00 00 00 00	 call	 ?max_size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::max_size
  0004d	8b f0		 mov	 esi, eax
  0004f	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00052	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  00057	2b f0		 sub	 esi, eax
  00059	3b 75 10	 cmp	 esi, DWORD PTR __Count$[ebp]
  0005c	73 0a		 jae	 SHORT $LN10@Insert_n@45

; 1171 : 			_Xlen();	// result too long

  0005e	e8 00 00 00 00	 call	 ?_Xlen@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@KAXXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Xlen
  00063	e9 fb 02 00 00	 jmp	 $LN14@Insert_n@45
$LN10@Insert_n@45:

; 1172 : 		else if (_Capacity < size() + _Count)

  00068	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0006b	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  00070	03 45 10	 add	 eax, DWORD PTR __Count$[ebp]
  00073	39 45 ec	 cmp	 DWORD PTR __Capacity$[ebp], eax
  00076	0f 83 70 01 00
	00		 jae	 $LN8@Insert_n@45

; 1173 : 			{	// not enough room, reallocate
; 1174 : 			_Capacity = max_size() - _Capacity / 2 < _Capacity
; 1175 : 				? 0 : _Capacity + _Capacity / 2;	// try to grow by 50%

  0007c	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0007f	e8 00 00 00 00	 call	 ?max_size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::max_size
  00084	8b 4d ec	 mov	 ecx, DWORD PTR __Capacity$[ebp]
  00087	d1 e9		 shr	 ecx, 1
  00089	2b c1		 sub	 eax, ecx
  0008b	3b 45 ec	 cmp	 eax, DWORD PTR __Capacity$[ebp]
  0008e	73 09		 jae	 SHORT $LN15@Insert_n@45
  00090	c7 45 c8 00 00
	00 00		 mov	 DWORD PTR tv84[ebp], 0
  00097	eb 0b		 jmp	 SHORT $LN16@Insert_n@45
$LN15@Insert_n@45:
  00099	8b 55 ec	 mov	 edx, DWORD PTR __Capacity$[ebp]
  0009c	d1 ea		 shr	 edx, 1
  0009e	03 55 ec	 add	 edx, DWORD PTR __Capacity$[ebp]
  000a1	89 55 c8	 mov	 DWORD PTR tv84[ebp], edx
$LN16@Insert_n@45:
  000a4	8b 45 c8	 mov	 eax, DWORD PTR tv84[ebp]
  000a7	89 45 ec	 mov	 DWORD PTR __Capacity$[ebp], eax

; 1176 : 			if (_Capacity < size() + _Count)

  000aa	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  000ad	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  000b2	03 45 10	 add	 eax, DWORD PTR __Count$[ebp]
  000b5	39 45 ec	 cmp	 DWORD PTR __Capacity$[ebp], eax
  000b8	73 0e		 jae	 SHORT $LN7@Insert_n@45

; 1177 : 				_Capacity = size() + _Count;

  000ba	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  000bd	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  000c2	03 45 10	 add	 eax, DWORD PTR __Count$[ebp]
  000c5	89 45 ec	 mov	 DWORD PTR __Capacity$[ebp], eax
$LN7@Insert_n@45:

; 1178 : 			pointer _Newvec = this->_Alval.allocate(_Capacity);

  000c8	8b 4d ec	 mov	 ecx, DWORD PTR __Capacity$[ebp]
  000cb	51		 push	 ecx
  000cc	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  000cf	83 c1 08	 add	 ecx, 8
  000d2	e8 00 00 00 00	 call	 ?allocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEPAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::allocator<SmartPtr<CSettingGroup> >::allocate
  000d7	89 45 e4	 mov	 DWORD PTR __Newvec$152991[ebp], eax

; 1179 : 			pointer _Ptr = _Newvec;

  000da	8b 55 e4	 mov	 edx, DWORD PTR __Newvec$152991[ebp]
  000dd	89 55 e8	 mov	 DWORD PTR __Ptr$152992[ebp], edx

; 1180 : 
; 1181 : 			_TRY_BEGIN

  000e0	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 0

; 1182 : 			_Ptr = _Umove(_Myfirst, _VEC_ITER_BASE(_Where),
; 1183 : 				_Newvec);	// copy prefix

  000e7	8b 45 e4	 mov	 eax, DWORD PTR __Newvec$152991[ebp]
  000ea	50		 push	 eax
  000eb	8b 4d 0c	 mov	 ecx, DWORD PTR __Where$[ebp+4]
  000ee	51		 push	 ecx
  000ef	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  000f2	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  000f5	50		 push	 eax
  000f6	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  000f9	e8 00 00 00 00	 call	 ??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Umove<SmartPtr<CSettingGroup> *>
  000fe	89 45 e8	 mov	 DWORD PTR __Ptr$152992[ebp], eax

; 1184 : 			_Ptr = _Ufill(_Ptr, _Count, _Val);	// add new stuff

  00101	8b 4d 14	 mov	 ecx, DWORD PTR __Val$[ebp]
  00104	51		 push	 ecx
  00105	8b 55 10	 mov	 edx, DWORD PTR __Count$[ebp]
  00108	52		 push	 edx
  00109	8b 45 e8	 mov	 eax, DWORD PTR __Ptr$152992[ebp]
  0010c	50		 push	 eax
  0010d	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00110	e8 00 00 00 00	 call	 ?_Ufill@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Ufill
  00115	89 45 e8	 mov	 DWORD PTR __Ptr$152992[ebp], eax

; 1185 : 			_Umove(_VEC_ITER_BASE(_Where), _Mylast, _Ptr);	// copy suffix

  00118	8b 4d e8	 mov	 ecx, DWORD PTR __Ptr$152992[ebp]
  0011b	51		 push	 ecx
  0011c	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  0011f	8b 42 10	 mov	 eax, DWORD PTR [edx+16]
  00122	50		 push	 eax
  00123	8b 4d 0c	 mov	 ecx, DWORD PTR __Where$[ebp+4]
  00126	51		 push	 ecx
  00127	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0012a	e8 00 00 00 00	 call	 ??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Umove<SmartPtr<CSettingGroup> *>
  0012f	eb 39		 jmp	 SHORT $LN17@Insert_n@45
__catch$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$0:

; 1186 : 			_CATCH_ALL
; 1187 : 			_Destroy(_Newvec, _Ptr);

  00131	8b 55 e8	 mov	 edx, DWORD PTR __Ptr$152992[ebp]
  00134	52		 push	 edx
  00135	8b 45 e4	 mov	 eax, DWORD PTR __Newvec$152991[ebp]
  00138	50		 push	 eax
  00139	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0013c	e8 00 00 00 00	 call	 ?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Destroy

; 1188 : 			this->_Alval.deallocate(_Newvec, _Capacity);

  00141	8b 4d ec	 mov	 ecx, DWORD PTR __Capacity$[ebp]
  00144	51		 push	 ecx
  00145	8b 55 e4	 mov	 edx, DWORD PTR __Newvec$152991[ebp]
  00148	52		 push	 edx
  00149	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0014c	83 c1 08	 add	 ecx, 8
  0014f	e8 00 00 00 00	 call	 ?deallocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::allocator<SmartPtr<CSettingGroup> >::deallocate

; 1189 : 			_RERAISE;

  00154	6a 00		 push	 0
  00156	6a 00		 push	 0
  00158	e8 00 00 00 00	 call	 __CxxThrowException@8

; 1190 : 			_CATCH_END

  0015d	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
  00164	b8 00 00 00 00	 mov	 eax, __tryend$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$1
  00169	c3		 ret	 0
$LN17@Insert_n@45:
  0016a	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
__tryend$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$1:

; 1191 : 
; 1192 : 			_Count += size();

  00171	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00174	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  00179	03 45 10	 add	 eax, DWORD PTR __Count$[ebp]
  0017c	89 45 10	 mov	 DWORD PTR __Count$[ebp], eax

; 1193 : 			if (_Myfirst != 0)

  0017f	8b 45 cc	 mov	 eax, DWORD PTR _this$[ebp]
  00182	83 78 0c 00	 cmp	 DWORD PTR [eax+12], 0
  00186	74 38		 je	 SHORT $LN5@Insert_n@45

; 1194 : 				{	// destroy and deallocate old array
; 1195 : 				_Destroy(_Myfirst, _Mylast);

  00188	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0018b	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  0018e	52		 push	 edx
  0018f	8b 45 cc	 mov	 eax, DWORD PTR _this$[ebp]
  00192	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00195	51		 push	 ecx
  00196	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00199	e8 00 00 00 00	 call	 ?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Destroy

; 1196 : 				this->_Alval.deallocate(_Myfirst, _Myend - _Myfirst);

  0019e	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  001a1	8b 45 cc	 mov	 eax, DWORD PTR _this$[ebp]
  001a4	8b 4a 14	 mov	 ecx, DWORD PTR [edx+20]
  001a7	2b 48 0c	 sub	 ecx, DWORD PTR [eax+12]
  001aa	c1 f9 03	 sar	 ecx, 3
  001ad	51		 push	 ecx
  001ae	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  001b1	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  001b4	50		 push	 eax
  001b5	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  001b8	83 c1 08	 add	 ecx, 8
  001bb	e8 00 00 00 00	 call	 ?deallocate@?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@QAEXPAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::allocator<SmartPtr<CSettingGroup> >::deallocate
$LN5@Insert_n@45:

; 1197 : 				}
; 1198 : 
; 1199 :  #if _HAS_ITERATOR_DEBUGGING
; 1200 : 			this->_Orphan_all();
; 1201 :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 1202 : 
; 1203 : 			_Myend = _Newvec + _Capacity;

  001c0	8b 4d ec	 mov	 ecx, DWORD PTR __Capacity$[ebp]
  001c3	8b 55 e4	 mov	 edx, DWORD PTR __Newvec$152991[ebp]
  001c6	8d 04 ca	 lea	 eax, DWORD PTR [edx+ecx*8]
  001c9	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  001cc	89 41 14	 mov	 DWORD PTR [ecx+20], eax

; 1204 : 			_Mylast = _Newvec + _Count;

  001cf	8b 55 10	 mov	 edx, DWORD PTR __Count$[ebp]
  001d2	8b 45 e4	 mov	 eax, DWORD PTR __Newvec$152991[ebp]
  001d5	8d 0c d0	 lea	 ecx, DWORD PTR [eax+edx*8]
  001d8	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  001db	89 4a 10	 mov	 DWORD PTR [edx+16], ecx

; 1205 : 			_Myfirst = _Newvec;

  001de	8b 45 cc	 mov	 eax, DWORD PTR _this$[ebp]
  001e1	8b 4d e4	 mov	 ecx, DWORD PTR __Newvec$152991[ebp]
  001e4	89 48 0c	 mov	 DWORD PTR [eax+12], ecx
  001e7	e9 77 01 00 00	 jmp	 $LN14@Insert_n@45
$LN8@Insert_n@45:

; 1206 : 			}
; 1207 : 		else if ((size_type)(_Mylast - _VEC_ITER_BASE(_Where)) < _Count)

  001ec	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  001ef	8b 42 10	 mov	 eax, DWORD PTR [edx+16]
  001f2	2b 45 0c	 sub	 eax, DWORD PTR __Where$[ebp+4]
  001f5	c1 f8 03	 sar	 eax, 3
  001f8	3b 45 10	 cmp	 eax, DWORD PTR __Count$[ebp]
  001fb	0f 83 dc 00 00
	00		 jae	 $LN3@Insert_n@45

; 1208 : 			{	// new stuff spills off end
; 1209 : 			_Ty _Tmp = _Val;	// in case _Val is in sequence

  00201	8b 4d 14	 mov	 ecx, DWORD PTR __Val$[ebp]
  00204	51		 push	 ecx
  00205	8d 4d dc	 lea	 ecx, DWORD PTR __Tmp$153003[ebp]
  00208	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingGroup@@@@QAE@ABV0@@Z ; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
  0020d	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 2

; 1210 : 
; 1211 : 			_Umove(_VEC_ITER_BASE(_Where), _Mylast,
; 1212 : 				_VEC_ITER_BASE(_Where) + _Count);	// copy suffix

  00214	8b 55 10	 mov	 edx, DWORD PTR __Count$[ebp]
  00217	8b 45 0c	 mov	 eax, DWORD PTR __Where$[ebp+4]
  0021a	8d 0c d0	 lea	 ecx, DWORD PTR [eax+edx*8]
  0021d	51		 push	 ecx
  0021e	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  00221	8b 42 10	 mov	 eax, DWORD PTR [edx+16]
  00224	50		 push	 eax
  00225	8b 4d 0c	 mov	 ecx, DWORD PTR __Where$[ebp+4]
  00228	51		 push	 ecx
  00229	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0022c	e8 00 00 00 00	 call	 ??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Umove<SmartPtr<CSettingGroup> *>

; 1213 : 
; 1214 : 			_TRY_BEGIN

  00231	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+12], 3

; 1215 : 			_Ufill(_Mylast, _Count - (_Mylast - _VEC_ITER_BASE(_Where)),
; 1216 : 				_Tmp);	// insert new stuff off end

  00235	8d 55 dc	 lea	 edx, DWORD PTR __Tmp$153003[ebp]
  00238	52		 push	 edx
  00239	8b 45 cc	 mov	 eax, DWORD PTR _this$[ebp]
  0023c	8b 48 10	 mov	 ecx, DWORD PTR [eax+16]
  0023f	2b 4d 0c	 sub	 ecx, DWORD PTR __Where$[ebp+4]
  00242	c1 f9 03	 sar	 ecx, 3
  00245	8b 55 10	 mov	 edx, DWORD PTR __Count$[ebp]
  00248	2b d1		 sub	 edx, ecx
  0024a	52		 push	 edx
  0024b	8b 45 cc	 mov	 eax, DWORD PTR _this$[ebp]
  0024e	8b 48 10	 mov	 ecx, DWORD PTR [eax+16]
  00251	51		 push	 ecx
  00252	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00255	e8 00 00 00 00	 call	 ?_Ufill@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Ufill
  0025a	eb 35		 jmp	 SHORT $LN19@Insert_n@45
__catch$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$2:

; 1217 : 			_CATCH_ALL
; 1218 : 			_Destroy(_VEC_ITER_BASE(_Where) + _Count, _Mylast + _Count);

  0025c	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  0025f	8b 42 10	 mov	 eax, DWORD PTR [edx+16]
  00262	8b 4d 10	 mov	 ecx, DWORD PTR __Count$[ebp]
  00265	8d 14 c8	 lea	 edx, DWORD PTR [eax+ecx*8]
  00268	52		 push	 edx
  00269	8b 45 10	 mov	 eax, DWORD PTR __Count$[ebp]
  0026c	8b 4d 0c	 mov	 ecx, DWORD PTR __Where$[ebp+4]
  0026f	8d 14 c1	 lea	 edx, DWORD PTR [ecx+eax*8]
  00272	52		 push	 edx
  00273	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00276	e8 00 00 00 00	 call	 ?_Destroy@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCSettingGroup@@@@0@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Destroy

; 1219 : 			_RERAISE;

  0027b	6a 00		 push	 0
  0027d	6a 00		 push	 0
  0027f	e8 00 00 00 00	 call	 __CxxThrowException@8

; 1220 : 			_CATCH_END

  00284	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 2
  0028b	b8 00 00 00 00	 mov	 eax, __tryend$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$3
  00290	c3		 ret	 0
$LN19@Insert_n@45:
  00291	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 2
__tryend$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$3:

; 1221 : 
; 1222 : 			_Mylast += _Count;

  00298	8b 45 cc	 mov	 eax, DWORD PTR _this$[ebp]
  0029b	8b 48 10	 mov	 ecx, DWORD PTR [eax+16]
  0029e	8b 55 10	 mov	 edx, DWORD PTR __Count$[ebp]
  002a1	8d 04 d1	 lea	 eax, DWORD PTR [ecx+edx*8]
  002a4	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  002a7	89 41 10	 mov	 DWORD PTR [ecx+16], eax

; 1223 : 
; 1224 :  #if _HAS_ITERATOR_DEBUGGING
; 1225 : 			_Orphan_range(_Where._Myptr, _Mylast);
; 1226 :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 1227 : 
; 1228 : 			std::fill(_VEC_ITER_BASE(_Where), _Mylast - _Count,
; 1229 : 				_Tmp);	// insert up to old end

  002aa	8d 55 dc	 lea	 edx, DWORD PTR __Tmp$153003[ebp]
  002ad	52		 push	 edx
  002ae	8b 45 10	 mov	 eax, DWORD PTR __Count$[ebp]
  002b1	c1 e0 03	 shl	 eax, 3
  002b4	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  002b7	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  002ba	2b d0		 sub	 edx, eax
  002bc	52		 push	 edx
  002bd	8b 45 0c	 mov	 eax, DWORD PTR __Where$[ebp+4]
  002c0	50		 push	 eax
  002c1	e8 00 00 00 00	 call	 ??$fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z ; std::fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >
  002c6	83 c4 0c	 add	 esp, 12			; 0000000cH

; 1230 : 			}

  002c9	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
  002d0	8d 4d dc	 lea	 ecx, DWORD PTR __Tmp$153003[ebp]
  002d3	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>

; 1231 : 		else

  002d8	e9 86 00 00 00	 jmp	 $LN14@Insert_n@45
$LN3@Insert_n@45:

; 1232 : 			{	// new stuff can all be assigned
; 1233 : 			_Ty _Tmp = _Val;	// in case _Val is in sequence

  002dd	8b 4d 14	 mov	 ecx, DWORD PTR __Val$[ebp]
  002e0	51		 push	 ecx
  002e1	8d 4d d0	 lea	 ecx, DWORD PTR __Tmp$153013[ebp]
  002e4	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingGroup@@@@QAE@ABV0@@Z ; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
  002e9	c7 45 fc 05 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 5

; 1234 : 
; 1235 : 			pointer _Oldend = _Mylast;

  002f0	8b 55 cc	 mov	 edx, DWORD PTR _this$[ebp]
  002f3	8b 42 10	 mov	 eax, DWORD PTR [edx+16]
  002f6	89 45 d8	 mov	 DWORD PTR __Oldend$153014[ebp], eax

; 1236 : 			_Mylast = _Umove(_Oldend - _Count, _Oldend,
; 1237 : 				_Mylast);	// copy suffix

  002f9	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  002fc	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  002ff	52		 push	 edx
  00300	8b 45 d8	 mov	 eax, DWORD PTR __Oldend$153014[ebp]
  00303	50		 push	 eax
  00304	8b 4d 10	 mov	 ecx, DWORD PTR __Count$[ebp]
  00307	c1 e1 03	 shl	 ecx, 3
  0030a	8b 55 d8	 mov	 edx, DWORD PTR __Oldend$153014[ebp]
  0030d	2b d1		 sub	 edx, ecx
  0030f	52		 push	 edx
  00310	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  00313	e8 00 00 00 00	 call	 ??$_Umove@PAV?$SmartPtr@VCSettingGroup@@@@@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV2@00@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Umove<SmartPtr<CSettingGroup> *>
  00318	8b 4d cc	 mov	 ecx, DWORD PTR _this$[ebp]
  0031b	89 41 10	 mov	 DWORD PTR [ecx+16], eax

; 1238 : 
; 1239 :  #if _HAS_ITERATOR_DEBUGGING
; 1240 : 			_Orphan_range(_Where._Myptr, _Mylast);
; 1241 :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 1242 : 
; 1243 : 			_STDEXT _Unchecked_move_backward(_VEC_ITER_BASE(_Where), _Oldend - _Count,
; 1244 : 				_Oldend);	// copy hole

  0031e	8b 55 d8	 mov	 edx, DWORD PTR __Oldend$153014[ebp]
  00321	52		 push	 edx
  00322	8b 45 10	 mov	 eax, DWORD PTR __Count$[ebp]
  00325	c1 e0 03	 shl	 eax, 3
  00328	8b 4d d8	 mov	 ecx, DWORD PTR __Oldend$153014[ebp]
  0032b	2b c8		 sub	 ecx, eax
  0032d	51		 push	 ecx
  0032e	8b 55 0c	 mov	 edx, DWORD PTR __Where$[ebp+4]
  00331	52		 push	 edx
  00332	e8 00 00 00 00	 call	 ??$_Unchecked_move_backward@PAV?$SmartPtr@VCSettingGroup@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCSettingGroup@@@@PAV1@00@Z ; stdext::_Unchecked_move_backward<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> *>
  00337	83 c4 0c	 add	 esp, 12			; 0000000cH

; 1245 : 			std::fill(_VEC_ITER_BASE(_Where), _VEC_ITER_BASE(_Where) + _Count,
; 1246 : 				_Tmp);	// insert into hole

  0033a	8d 45 d0	 lea	 eax, DWORD PTR __Tmp$153013[ebp]
  0033d	50		 push	 eax
  0033e	8b 4d 10	 mov	 ecx, DWORD PTR __Count$[ebp]
  00341	8b 55 0c	 mov	 edx, DWORD PTR __Where$[ebp+4]
  00344	8d 04 ca	 lea	 eax, DWORD PTR [edx+ecx*8]
  00347	50		 push	 eax
  00348	8b 4d 0c	 mov	 ecx, DWORD PTR __Where$[ebp+4]
  0034b	51		 push	 ecx
  0034c	e8 00 00 00 00	 call	 ??$fill@PAV?$SmartPtr@VCSettingGroup@@@@V1@@std@@YAXPAV?$SmartPtr@VCSettingGroup@@@@0ABV1@@Z ; std::fill<SmartPtr<CSettingGroup> *,SmartPtr<CSettingGroup> >
  00351	83 c4 0c	 add	 esp, 12			; 0000000cH

; 1247 : 			}

  00354	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
  0035b	8d 4d d0	 lea	 ecx, DWORD PTR __Tmp$153013[ebp]
  0035e	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
$LN14@Insert_n@45:

; 1248 : 		}

  00363	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp+4]
  00366	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0036d	59		 pop	 ecx
  0036e	5f		 pop	 edi
  0036f	5e		 pop	 esi
  00370	5b		 pop	 ebx
  00371	8b e5		 mov	 esp, ebp
  00373	5d		 pop	 ebp
  00374	c2 10 00	 ret	 16			; 00000010H
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$4:
  00000	8d 4d dc	 lea	 ecx, DWORD PTR __Tmp$153003[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
__unwindfunclet$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z$5:
  00008	8d 4d d0	 lea	 ecx, DWORD PTR __Tmp$153013[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
__ehhandler$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a c4	 mov	 ecx, DWORD PTR [edx-60]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Insert_n
; Function compile flags: /Odtp
;	COMDAT ?insert@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@ABV?$SmartPtr@VCSettingGroup@@@@@Z
_TEXT	SEGMENT
tv77 = -28						; size = 4
_this$ = -24						; size = 4
$T353837 = -20						; size = 8
$T353834 = -12						; size = 8
__Off$ = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
__Where$ = 12						; size = 8
__Val$ = 20						; size = 4
?insert@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@ABV?$SmartPtr@VCSettingGroup@@@@@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::insert, COMDAT
; _this$ = ecx

; 875  : 		{	// insert _Val at _Where

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 1c	 sub	 esp, 28			; 0000001cH
  00006	89 4d e8	 mov	 DWORD PTR _this$[ebp], ecx

; 876  : 		size_type _Off = size() == 0 ? 0 : _Where - begin();

  00009	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  00011	85 c0		 test	 eax, eax
  00013	75 09		 jne	 SHORT $LN3@insert@49
  00015	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv77[ebp], 0
  0001c	eb 18		 jmp	 SHORT $LN4@insert@49
$LN3@insert@49:
  0001e	8d 45 f4	 lea	 eax, DWORD PTR $T353834[ebp]
  00021	50		 push	 eax
  00022	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  00025	e8 00 00 00 00	 call	 ?begin@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::begin
  0002a	50		 push	 eax
  0002b	8d 4d 0c	 lea	 ecx, DWORD PTR __Where$[ebp]
  0002e	e8 00 00 00 00	 call	 ??G?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEHABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator-
  00033	89 45 e4	 mov	 DWORD PTR tv77[ebp], eax
$LN4@insert@49:
  00036	8b 4d e4	 mov	 ecx, DWORD PTR tv77[ebp]
  00039	89 4d fc	 mov	 DWORD PTR __Off$[ebp], ecx

; 877  : 		_Insert_n(_Where, (size_type)1, _Val);

  0003c	8b 55 14	 mov	 edx, DWORD PTR __Val$[ebp]
  0003f	52		 push	 edx
  00040	6a 01		 push	 1
  00042	8b 45 10	 mov	 eax, DWORD PTR __Where$[ebp+4]
  00045	50		 push	 eax
  00046	8b 4d 0c	 mov	 ecx, DWORD PTR __Where$[ebp]
  00049	51		 push	 ecx
  0004a	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  0004d	e8 00 00 00 00	 call	 ?_Insert_n@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@IABV?$SmartPtr@VCSettingGroup@@@@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Insert_n

; 878  : 		return (begin() + _Off);

  00052	8b 55 fc	 mov	 edx, DWORD PTR __Off$[ebp]
  00055	52		 push	 edx
  00056	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
  00059	50		 push	 eax
  0005a	8d 4d ec	 lea	 ecx, DWORD PTR $T353837[ebp]
  0005d	51		 push	 ecx
  0005e	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  00061	e8 00 00 00 00	 call	 ?begin@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::begin
  00066	8b c8		 mov	 ecx, eax
  00068	e8 00 00 00 00	 call	 ??H?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBE?AV01@H@Z ; std::_Vector_iterator<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator+
  0006d	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 879  : 		}

  00070	8b e5		 mov	 esp, ebp
  00072	5d		 pop	 ebp
  00073	c2 10 00	 ret	 16			; 00000010H
?insert@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@ABV?$SmartPtr@VCSettingGroup@@@@@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::insert
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?push_back@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEXABV?$SmartPtr@VCSettingGroup@@@@@Z
_TEXT	SEGMENT
_this$ = -28						; size = 4
$T353842 = -24						; size = 8
$T353841 = -16						; size = 8
$T353840 = -8						; size = 8
__Val$ = 8						; size = 4
?push_back@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEXABV?$SmartPtr@VCSettingGroup@@@@@Z PROC ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::push_back, COMDAT
; _this$ = ecx

; 809  : 		{	// insert element at end

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 1c	 sub	 esp, 28			; 0000001cH
  00006	56		 push	 esi
  00007	89 4d e4	 mov	 DWORD PTR _this$[ebp], ecx

; 810  : 		if (size() < capacity())

  0000a	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0000d	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  00012	8b f0		 mov	 esi, eax
  00014	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00017	e8 00 00 00 00	 call	 ?capacity@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::capacity
  0001c	3b f0		 cmp	 esi, eax
  0001e	73 1d		 jae	 SHORT $LN2@push_back@41

; 811  : 
; 812  :  #if _HAS_ITERATOR_DEBUGGING
; 813  : 			{ // room at end, construct it there
; 814  : 			_Orphan_range(_Mylast, _Mylast);
; 815  : 			_Mylast = _Ufill(_Mylast, 1, _Val);
; 816  : 			}
; 817  : 
; 818  :  #else /* _HAS_ITERATOR_DEBUGGING */
; 819  : 			_Mylast = _Ufill(_Mylast, 1, _Val);

  00020	8b 45 08	 mov	 eax, DWORD PTR __Val$[ebp]
  00023	50		 push	 eax
  00024	6a 01		 push	 1
  00026	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00029	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  0002c	52		 push	 edx
  0002d	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00030	e8 00 00 00 00	 call	 ?_Ufill@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@IAEPAV?$SmartPtr@VCSettingGroup@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::_Ufill
  00035	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00038	89 41 10	 mov	 DWORD PTR [ecx+16], eax

; 820  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 821  : 
; 822  : 		else

  0003b	eb 2f		 jmp	 SHORT $LN3@push_back@41
$LN2@push_back@41:

; 823  : 			insert(end(), _Val);

  0003d	8d 55 f0	 lea	 edx, DWORD PTR $T353841[ebp]
  00040	52		 push	 edx
  00041	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00044	e8 00 00 00 00	 call	 ?end@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::end
  00049	8b 08		 mov	 ecx, DWORD PTR [eax]
  0004b	8b 50 04	 mov	 edx, DWORD PTR [eax+4]
  0004e	89 4d f8	 mov	 DWORD PTR $T353840[ebp], ecx
  00051	89 55 fc	 mov	 DWORD PTR $T353840[ebp+4], edx
  00054	8b 45 08	 mov	 eax, DWORD PTR __Val$[ebp]
  00057	50		 push	 eax
  00058	8b 4d fc	 mov	 ecx, DWORD PTR $T353840[ebp+4]
  0005b	51		 push	 ecx
  0005c	8b 55 f8	 mov	 edx, DWORD PTR $T353840[ebp]
  0005f	52		 push	 edx
  00060	8d 45 e8	 lea	 eax, DWORD PTR $T353842[ebp]
  00063	50		 push	 eax
  00064	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00067	e8 00 00 00 00	 call	 ?insert@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@2@ABV?$SmartPtr@VCSettingGroup@@@@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::insert
$LN3@push_back@41:

; 824  : 		}

  0006c	5e		 pop	 esi
  0006d	8b e5		 mov	 esp, ebp
  0006f	5d		 pop	 ebp
  00070	c2 04 00	 ret	 4
?push_back@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEXABV?$SmartPtr@VCSettingGroup@@@@@Z ENDP ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::push_back
_TEXT	ENDS
PUBLIC	?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z ; CSettingsMaster::GetGroup
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\settingsmaster.cpp
xdata$x	SEGMENT
__unwindtable$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$1
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$1
	DD	02H
	DD	FLAT:__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$2
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$2
__ehfuncinfo$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z DD 019930522H
	DD	05H
	DD	FLAT:__unwindtable$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z
_TEXT	SEGMENT
tv137 = -76						; size = 4
_this$ = -72						; size = 4
$T353852 = -68						; size = 4
$T353850 = -64						; size = 4
$T353847 = -60						; size = 28
$T353846 = -32						; size = 4
$T353845 = -28						; size = 4
_i$152060 = -24						; size = 4
_pNewGroup$ = -20					; size = 8
__$EHRec$ = -12						; size = 12
_szName$ = 8						; size = 4
_Flags$ = 12						; size = 4
_IsActiveByDefault$ = 16				; size = 4
?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z PROC ; CSettingsMaster::GetGroup, COMDAT
; _this$ = ecx

; 374  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 40	 sub	 esp, 64			; 00000040H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d b8	 mov	 DWORD PTR _this$[ebp], ecx
  00028	c7 45 bc 00 00
	00 00		 mov	 DWORD PTR $T353852[ebp], 0

; 375  :     for (int i = 0; i < m_SettingsGroups.size(); i++)

  0002f	c7 45 e8 00 00
	00 00		 mov	 DWORD PTR _i$152060[ebp], 0
  00036	eb 09		 jmp	 SHORT $LN4@GetGroup
$LN3@GetGroup:
  00038	8b 45 e8	 mov	 eax, DWORD PTR _i$152060[ebp]
  0003b	83 c0 01	 add	 eax, 1
  0003e	89 45 e8	 mov	 DWORD PTR _i$152060[ebp], eax
$LN4@GetGroup:
  00041	8b 4d b8	 mov	 ecx, DWORD PTR _this$[ebp]
  00044	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  0004a	e8 00 00 00 00	 call	 ?size@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::size
  0004f	39 45 e8	 cmp	 DWORD PTR _i$152060[ebp], eax
  00052	73 54		 jae	 SHORT $LN2@GetGroup

; 376  :     {
; 377  :         if(m_SettingsGroups[i]->GetName() == szName)

  00054	8b 4d 08	 mov	 ecx, DWORD PTR _szName$[ebp]
  00057	51		 push	 ecx
  00058	8b 55 e8	 mov	 edx, DWORD PTR _i$152060[ebp]
  0005b	52		 push	 edx
  0005c	8b 4d b8	 mov	 ecx, DWORD PTR _this$[ebp]
  0005f	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  00065	e8 00 00 00 00	 call	 ??A?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator[]
  0006a	8b c8		 mov	 ecx, eax
  0006c	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ; SmartPtr<CSettingGroup>::operator->
  00071	8b c8		 mov	 ecx, eax
  00073	e8 00 00 00 00	 call	 ?GetName@CSettingGroup@@QAEABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; CSettingGroup::GetName
  00078	50		 push	 eax
  00079	e8 00 00 00 00	 call	 ??$?8_WU?$char_traits@_W@std@@V?$allocator@_W@1@@std@@YA_NABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@0@PB_W@Z ; std::operator==<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0007e	83 c4 08	 add	 esp, 8
  00081	0f b6 c0	 movzx	 eax, al
  00084	85 c0		 test	 eax, eax
  00086	74 1e		 je	 SHORT $LN1@GetGroup

; 378  :         {
; 379  :             return m_SettingsGroups[i].GetRawPointer();

  00088	8b 4d e8	 mov	 ecx, DWORD PTR _i$152060[ebp]
  0008b	51		 push	 ecx
  0008c	8b 4d b8	 mov	 ecx, DWORD PTR _this$[ebp]
  0008f	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  00095	e8 00 00 00 00	 call	 ??A?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEAAV?$SmartPtr@VCSettingGroup@@@@I@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::operator[]
  0009a	8b c8		 mov	 ecx, eax
  0009c	e8 00 00 00 00	 call	 ?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ; SmartPtr<CSettingGroup>::GetRawPointer
  000a1	e9 ba 00 00 00	 jmp	 $LN5@GetGroup
$LN1@GetGroup:

; 380  :         }
; 381  :     }

  000a6	eb 90		 jmp	 SHORT $LN3@GetGroup
$LN2@GetGroup:

; 382  :     SmartPtr<CSettingGroup> pNewGroup(new CSettingGroup(szName, Flags, IsActiveByDefault));

  000a8	6a 28		 push	 40			; 00000028H
  000aa	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  000af	83 c4 04	 add	 esp, 4
  000b2	89 45 e0	 mov	 DWORD PTR $T353846[ebp], eax
  000b5	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  000bc	83 7d e0 00	 cmp	 DWORD PTR $T353846[ebp], 0
  000c0	74 32		 je	 SHORT $LN7@GetGroup
  000c2	8b 55 08	 mov	 edx, DWORD PTR _szName$[ebp]
  000c5	52		 push	 edx
  000c6	8d 4d c4	 lea	 ecx, DWORD PTR $T353847[ebp]
  000c9	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  000ce	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  000d2	8b 45 bc	 mov	 eax, DWORD PTR $T353852[ebp]
  000d5	83 c8 01	 or	 eax, 1
  000d8	89 45 bc	 mov	 DWORD PTR $T353852[ebp], eax
  000db	8b 4d 10	 mov	 ecx, DWORD PTR _IsActiveByDefault$[ebp]
  000de	51		 push	 ecx
  000df	8b 55 0c	 mov	 edx, DWORD PTR _Flags$[ebp]
  000e2	52		 push	 edx
  000e3	8d 45 c4	 lea	 eax, DWORD PTR $T353847[ebp]
  000e6	50		 push	 eax
  000e7	8b 4d e0	 mov	 ecx, DWORD PTR $T353846[ebp]
  000ea	e8 00 00 00 00	 call	 ??0CSettingGroup@@QAE@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@KH@Z ; CSettingGroup::CSettingGroup
  000ef	89 45 b4	 mov	 DWORD PTR tv137[ebp], eax
  000f2	eb 07		 jmp	 SHORT $LN8@GetGroup
$LN7@GetGroup:
  000f4	c7 45 b4 00 00
	00 00		 mov	 DWORD PTR tv137[ebp], 0
$LN8@GetGroup:
  000fb	8b 4d b4	 mov	 ecx, DWORD PTR tv137[ebp]
  000fe	89 4d e4	 mov	 DWORD PTR $T353845[ebp], ecx
  00101	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 2
  00108	6a 00		 push	 0
  0010a	8b 55 e4	 mov	 edx, DWORD PTR $T353845[ebp]
  0010d	52		 push	 edx
  0010e	8d 4d ec	 lea	 ecx, DWORD PTR _pNewGroup$[ebp]
  00111	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCSettingGroup@@@@QAE@PAVCSettingGroup@@PAUCounter@@@Z ; SmartPtr<CSettingGroup>::SmartPtr<CSettingGroup>
  00116	c7 45 fc 04 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 4
  0011d	8b 45 bc	 mov	 eax, DWORD PTR $T353852[ebp]
  00120	83 e0 01	 and	 eax, 1
  00123	74 0c		 je	 SHORT $LN13@GetGroup
  00125	83 65 bc fe	 and	 DWORD PTR $T353852[ebp], -2 ; fffffffeH
  00129	8d 4d c4	 lea	 ecx, DWORD PTR $T353847[ebp]
  0012c	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN13@GetGroup:

; 383  :     m_SettingsGroups.push_back(pNewGroup);

  00131	8d 4d ec	 lea	 ecx, DWORD PTR _pNewGroup$[ebp]
  00134	51		 push	 ecx
  00135	8b 4d b8	 mov	 ecx, DWORD PTR _this$[ebp]
  00138	81 c1 c0 00 00
	00		 add	 ecx, 192		; 000000c0H
  0013e	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCSettingGroup@@@@V?$allocator@V?$SmartPtr@VCSettingGroup@@@@@std@@@std@@QAEXABV?$SmartPtr@VCSettingGroup@@@@@Z ; std::vector<SmartPtr<CSettingGroup>,std::allocator<SmartPtr<CSettingGroup> > >::push_back

; 384  :     return pNewGroup.GetRawPointer();

  00143	8d 4d ec	 lea	 ecx, DWORD PTR _pNewGroup$[ebp]
  00146	e8 00 00 00 00	 call	 ?GetRawPointer@?$SmartPtr@VCSettingGroup@@@@QBEPAVCSettingGroup@@XZ ; SmartPtr<CSettingGroup>::GetRawPointer
  0014b	89 45 c0	 mov	 DWORD PTR $T353850[ebp], eax
  0014e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00155	8d 4d ec	 lea	 ecx, DWORD PTR _pNewGroup$[ebp]
  00158	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
  0015d	8b 45 c0	 mov	 eax, DWORD PTR $T353850[ebp]
$LN5@GetGroup:

; 385  : }

  00160	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00163	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0016a	59		 pop	 ecx
  0016b	8b e5		 mov	 esp, ebp
  0016d	5d		 pop	 ebp
  0016e	c2 0c 00	 ret	 12			; 0000000cH
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$0:
  00000	8b 45 e0	 mov	 eax, DWORD PTR $T353846[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$1:
  0000b	8b 45 bc	 mov	 eax, DWORD PTR $T353852[ebp]
  0000e	83 e0 01	 and	 eax, 1
  00011	0f 84 0c 00 00
	00		 je	 $LN11@GetGroup
  00017	83 65 bc fe	 and	 DWORD PTR $T353852[ebp], -2 ; fffffffeH
  0001b	8d 4d c4	 lea	 ecx, DWORD PTR $T353847[ebp]
  0001e	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN11@GetGroup:
  00023	c3		 ret	 0
__unwindfunclet$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z$2:
  00024	8d 4d ec	 lea	 ecx, DWORD PTR _pNewGroup$[ebp]
  00027	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingGroup@@@@QAE@XZ ; SmartPtr<CSettingGroup>::~SmartPtr<CSettingGroup>
__ehhandler$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z:
  0002c	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00030	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00033	8b 4a bc	 mov	 ecx, DWORD PTR [edx-68]
  00036	33 c8		 xor	 ecx, eax
  00038	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0003d	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z
  00042	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?GetGroup@CSettingsMaster@@QAEPAVCSettingGroup@@PB_WKH@Z ENDP ; CSettingsMaster::GetGroup
PUBLIC	?SaveGroupedSettings@CSettingsMaster@@QAEXXZ	; CSettingsMaster::SaveGroupedSettings
; Function compile flags: /Odtp
;	COMDAT ?SaveGroupedSettings@CSettingsMaster@@QAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?SaveGroupedSettings@CSettingsMaster@@QAEXXZ PROC	; CSettingsMaster::SaveGroupedSettings, COMDAT
; _this$ = ecx

; 285  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 286  : //LOG(1, _T("SaveGroupedSettings m_SourceName %s"), m_SourceName.c_str());
; 287  : //LOG(1, _T("SaveGroupedSettings m_VideoInputName %s"), m_VideoInputName.c_str());
; 288  : //LOG(1, _T("SaveGroupedSettings m_AudioInputName %s"), m_AudioInputName.c_str());
; 289  : //LOG(1, _T("SaveGroupedSettings m_VideoFormatName %s"), m_VideoFormatName.c_str());
; 290  : //LOG(1, _T("SaveGroupedSettings m_ChannelName %s"), m_ChannelName.c_str());
; 291  :     ParseAllSettings(FALSE);

  00007	6a 00		 push	 0
  00009	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?ParseAllSettings@CSettingsMaster@@AAEXH@Z ; CSettingsMaster::ParseAllSettings

; 292  : }

  00011	8b e5		 mov	 esp, ebp
  00013	5d		 pop	 ebp
  00014	c3		 ret	 0
?SaveGroupedSettings@CSettingsMaster@@QAEXXZ ENDP	; CSettingsMaster::SaveGroupedSettings
_TEXT	ENDS
PUBLIC	?LoadGroupedSettings@CSettingsMaster@@QAEXXZ	; CSettingsMaster::LoadGroupedSettings
; Function compile flags: /Odtp
;	COMDAT ?LoadGroupedSettings@CSettingsMaster@@QAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?LoadGroupedSettings@CSettingsMaster@@QAEXXZ PROC	; CSettingsMaster::LoadGroupedSettings, COMDAT
; _this$ = ecx

; 274  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 275  : //LOG(1, _T("LoadGroupedSettings m_SourceName %s"), m_SourceName.c_str());
; 276  : //LOG(1, _T("LoadGroupedSettings m_VideoInputName %s"), m_VideoInputName.c_str());
; 277  : //LOG(1, _T("LoadGroupedSettings m_AudioInputName %s"), m_AudioInputName.c_str());
; 278  : //LOG(1, _T("LoadGroupedSettings m_VideoFormatName %s"), m_VideoFormatName.c_str());
; 279  : //LOG(1, _T("LoadGroupedSettings m_ChannelName %s"), m_ChannelName.c_str());
; 280  :     ParseAllSettings(TRUE);

  00007	6a 01		 push	 1
  00009	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?ParseAllSettings@CSettingsMaster@@AAEXH@Z ; CSettingsMaster::ParseAllSettings

; 281  : }

  00011	8b e5		 mov	 esp, ebp
  00013	5d		 pop	 ebp
  00014	c3		 ret	 0
?LoadGroupedSettings@CSettingsMaster@@QAEXXZ ENDP	; CSettingsMaster::LoadGroupedSettings
PUBLIC	?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z ; CSettingsMaster::HandleSettingMsgs
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$1
	DD	00H
	DD	FLAT:__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$2
	DD	00H
	DD	FLAT:__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$3
	DD	00H
	DD	FLAT:__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$4
	DD	00H
	DD	FLAT:__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$5
__ehfuncinfo$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z DD 019930522H
	DD	06H
	DD	FLAT:__unwindtable$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z
_TEXT	SEGMENT
tv188 = -108						; size = 4
tv136 = -104						; size = 4
tv146 = -100						; size = 4
tv183 = -96						; size = 4
tv75 = -92						; size = 4
tv85 = -88						; size = 4
_this$ = -84						; size = 4
$T358687 = -80						; size = 4
$T358686 = -76						; size = 4
$T358685 = -72						; size = 8
$T358684 = -64						; size = 4
$T358683 = -60						; size = 8
$T358682 = -52						; size = 4
$T358681 = -48						; size = 4
_Setting$152199 = -44					; size = 8
_Setting$152192 = -36					; size = 8
_Setting$152183 = -28					; size = 8
_Holder$ = -20						; size = 8
__$EHRec$ = -12						; size = 12
_hWnd$ = 8						; size = 4
_Message$ = 12						; size = 4
_wParam$ = 16						; size = 4
_lParam$ = 20						; size = 4
_bDone$ = 24						; size = 4
?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z PROC ; CSettingsMaster::HandleSettingMsgs, COMDAT
; _this$ = ecx

; 427  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 60	 sub	 esp, 96			; 00000060H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d ac	 mov	 DWORD PTR _this$[ebp], ecx

; 428  :     *bDone = FALSE;

  00028	8b 45 18	 mov	 eax, DWORD PTR _bDone$[ebp]
  0002b	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0

; 429  : 
; 430  :     SmartPtr<CSettingsHolder> Holder(FindMsgHolder(Message));

  00031	8b 4d 0c	 mov	 ecx, DWORD PTR _Message$[ebp]
  00034	51		 push	 ecx
  00035	8d 55 ec	 lea	 edx, DWORD PTR _Holder$[ebp]
  00038	52		 push	 edx
  00039	8b 4d ac	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	e8 00 00 00 00	 call	 ?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z ; CSettingsMaster::FindMsgHolder
  00041	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 431  :     if(Holder.IsValid())

  00048	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0004b	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCSettingsHolder@@@@QBEHXZ ; SmartPtr<CSettingsHolder>::IsValid
  00050	85 c0		 test	 eax, eax
  00052	0f 84 a6 00 00
	00		 je	 $LN8@HandleSett

; 432  :     {
; 433  :         SmartPtr<CSimpleSetting> Setting = Holder->GetSetting(wParam);

  00058	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  0005b	50		 push	 eax
  0005c	8d 4d e4	 lea	 ecx, DWORD PTR _Setting$152183[ebp]
  0005f	51		 push	 ecx
  00060	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  00063	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  00068	8b c8		 mov	 ecx, eax
  0006a	e8 00 00 00 00	 call	 ?GetSetting@CSettingsHolder@@QAE?AV?$SmartPtr@VCSimpleSetting@@@@J@Z ; CSettingsHolder::GetSetting
  0006f	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1

; 434  :         if(Setting.IsValid())

  00073	8d 4d e4	 lea	 ecx, DWORD PTR _Setting$152183[ebp]
  00076	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCSimpleSetting@@@@QBEHXZ ; SmartPtr<CSimpleSetting>::IsValid
  0007b	85 c0		 test	 eax, eax
  0007d	74 49		 je	 SHORT $LN7@HandleSett

; 435  :         {
; 436  :             *bDone = TRUE;

  0007f	8b 55 18	 mov	 edx, DWORD PTR _bDone$[ebp]
  00082	c7 02 01 00 00
	00		 mov	 DWORD PTR [edx], 1

; 437  :             return Setting->GetValueAsMessage();

  00088	8d 4d e4	 lea	 ecx, DWORD PTR _Setting$152183[ebp]
  0008b	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSimpleSetting@@@@QBEPAVCSimpleSetting@@XZ ; SmartPtr<CSimpleSetting>::operator->
  00090	89 45 a8	 mov	 DWORD PTR tv85[ebp], eax
  00093	8b 45 a8	 mov	 eax, DWORD PTR tv85[ebp]
  00096	8b 10		 mov	 edx, DWORD PTR [eax]
  00098	8b 4d a8	 mov	 ecx, DWORD PTR tv85[ebp]
  0009b	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  0009e	ff d0		 call	 eax
  000a0	89 45 d0	 mov	 DWORD PTR $T358681[ebp], eax
  000a3	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  000a7	8d 4d e4	 lea	 ecx, DWORD PTR _Setting$152183[ebp]
  000aa	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
  000af	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000b6	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  000b9	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  000be	8b 45 d0	 mov	 eax, DWORD PTR $T358681[ebp]
  000c1	e9 cf 01 00 00	 jmp	 $LN9@HandleSett

; 438  :         }
; 439  :         else

  000c6	eb 2a		 jmp	 SHORT $LN6@HandleSett
$LN7@HandleSett:

; 440  :         {
; 441  :             return 0;

  000c8	c7 45 cc 00 00
	00 00		 mov	 DWORD PTR $T358682[ebp], 0
  000cf	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  000d3	8d 4d e4	 lea	 ecx, DWORD PTR _Setting$152183[ebp]
  000d6	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
  000db	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000e2	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  000e5	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  000ea	8b 45 cc	 mov	 eax, DWORD PTR $T358682[ebp]
  000ed	e9 a3 01 00 00	 jmp	 $LN9@HandleSett
$LN6@HandleSett:

; 442  :         }
; 443  :     }

  000f2	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  000f6	8d 4d e4	 lea	 ecx, DWORD PTR _Setting$152183[ebp]
  000f9	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
$LN8@HandleSett:

; 444  : 
; 445  :     Holder = FindMsgHolder(Message - 100);

  000fe	8b 4d 0c	 mov	 ecx, DWORD PTR _Message$[ebp]
  00101	83 e9 64	 sub	 ecx, 100		; 00000064H
  00104	51		 push	 ecx
  00105	8d 55 c4	 lea	 edx, DWORD PTR $T358683[ebp]
  00108	52		 push	 edx
  00109	8b 4d ac	 mov	 ecx, DWORD PTR _this$[ebp]
  0010c	e8 00 00 00 00	 call	 ?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z ; CSettingsMaster::FindMsgHolder
  00111	89 45 a4	 mov	 DWORD PTR tv75[ebp], eax
  00114	8b 45 a4	 mov	 eax, DWORD PTR tv75[ebp]
  00117	89 45 a0	 mov	 DWORD PTR tv183[ebp], eax
  0011a	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  0011e	8b 4d a0	 mov	 ecx, DWORD PTR tv183[ebp]
  00121	51		 push	 ecx
  00122	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  00125	e8 00 00 00 00	 call	 ??4?$SmartPtr@VCSettingsHolder@@@@QAEAAV0@ABV0@@Z ; SmartPtr<CSettingsHolder>::operator=
  0012a	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  0012e	8d 4d c4	 lea	 ecx, DWORD PTR $T358683[ebp]
  00131	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>

; 446  :     if(Holder.IsValid())

  00136	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  00139	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCSettingsHolder@@@@QBEHXZ ; SmartPtr<CSettingsHolder>::IsValid
  0013e	85 c0		 test	 eax, eax
  00140	74 76		 je	 SHORT $LN5@HandleSett

; 447  :     {
; 448  :         SmartPtr<CSimpleSetting> Setting = Holder->GetSetting(wParam);

  00142	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  00145	52		 push	 edx
  00146	8d 45 dc	 lea	 eax, DWORD PTR _Setting$152192[ebp]
  00149	50		 push	 eax
  0014a	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0014d	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  00152	8b c8		 mov	 ecx, eax
  00154	e8 00 00 00 00	 call	 ?GetSetting@CSettingsHolder@@QAE?AV?$SmartPtr@VCSimpleSetting@@@@J@Z ; CSettingsHolder::GetSetting
  00159	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3

; 449  :         if(Setting.IsValid())

  0015d	8d 4d dc	 lea	 ecx, DWORD PTR _Setting$152192[ebp]
  00160	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCSimpleSetting@@@@QBEHXZ ; SmartPtr<CSimpleSetting>::IsValid
  00165	85 c0		 test	 eax, eax
  00167	74 25		 je	 SHORT $LN4@HandleSett

; 450  :         {
; 451  :             *bDone = TRUE;

  00169	8b 4d 18	 mov	 ecx, DWORD PTR _bDone$[ebp]
  0016c	c7 01 01 00 00
	00		 mov	 DWORD PTR [ecx], 1

; 452  :             Setting->SetValueFromMessage(lParam);

  00172	8d 4d dc	 lea	 ecx, DWORD PTR _Setting$152192[ebp]
  00175	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSimpleSetting@@@@QBEPAVCSimpleSetting@@XZ ; SmartPtr<CSimpleSetting>::operator->
  0017a	89 45 9c	 mov	 DWORD PTR tv146[ebp], eax
  0017d	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00180	52		 push	 edx
  00181	8b 45 9c	 mov	 eax, DWORD PTR tv146[ebp]
  00184	8b 10		 mov	 edx, DWORD PTR [eax]
  00186	8b 4d 9c	 mov	 ecx, DWORD PTR tv146[ebp]
  00189	8b 42 18	 mov	 eax, DWORD PTR [edx+24]
  0018c	ff d0		 call	 eax
$LN4@HandleSett:

; 453  :         }
; 454  :         return 0;

  0018e	c7 45 c0 00 00
	00 00		 mov	 DWORD PTR $T358684[ebp], 0
  00195	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00199	8d 4d dc	 lea	 ecx, DWORD PTR _Setting$152192[ebp]
  0019c	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
  001a1	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  001a8	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  001ab	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  001b0	8b 45 c0	 mov	 eax, DWORD PTR $T358684[ebp]
  001b3	e9 dd 00 00 00	 jmp	 $LN9@HandleSett
$LN5@HandleSett:

; 455  :     }
; 456  : 
; 457  :     Holder = FindMsgHolder(Message - 200);

  001b8	8b 4d 0c	 mov	 ecx, DWORD PTR _Message$[ebp]
  001bb	81 e9 c8 00 00
	00		 sub	 ecx, 200		; 000000c8H
  001c1	51		 push	 ecx
  001c2	8d 55 b8	 lea	 edx, DWORD PTR $T358685[ebp]
  001c5	52		 push	 edx
  001c6	8b 4d ac	 mov	 ecx, DWORD PTR _this$[ebp]
  001c9	e8 00 00 00 00	 call	 ?FindMsgHolder@CSettingsMaster@@QAE?AV?$SmartPtr@VCSettingsHolder@@@@J@Z ; CSettingsMaster::FindMsgHolder
  001ce	89 45 98	 mov	 DWORD PTR tv136[ebp], eax
  001d1	8b 45 98	 mov	 eax, DWORD PTR tv136[ebp]
  001d4	89 45 94	 mov	 DWORD PTR tv188[ebp], eax
  001d7	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  001db	8b 4d 94	 mov	 ecx, DWORD PTR tv188[ebp]
  001de	51		 push	 ecx
  001df	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  001e2	e8 00 00 00 00	 call	 ??4?$SmartPtr@VCSettingsHolder@@@@QAEAAV0@ABV0@@Z ; SmartPtr<CSettingsHolder>::operator=
  001e7	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  001eb	8d 4d b8	 lea	 ecx, DWORD PTR $T358685[ebp]
  001ee	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>

; 458  :     if(Holder.IsValid())

  001f3	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  001f6	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCSettingsHolder@@@@QBEHXZ ; SmartPtr<CSettingsHolder>::IsValid
  001fb	85 c0		 test	 eax, eax
  001fd	74 6c		 je	 SHORT $LN3@HandleSett

; 459  :     {
; 460  :         SmartPtr<CSimpleSetting> Setting = Holder->GetSetting(wParam);

  001ff	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  00202	52		 push	 edx
  00203	8d 45 d4	 lea	 eax, DWORD PTR _Setting$152199[ebp]
  00206	50		 push	 eax
  00207	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0020a	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  0020f	8b c8		 mov	 ecx, eax
  00211	e8 00 00 00 00	 call	 ?GetSetting@CSettingsHolder@@QAE?AV?$SmartPtr@VCSimpleSetting@@@@J@Z ; CSettingsHolder::GetSetting
  00216	c6 45 fc 05	 mov	 BYTE PTR __$EHRec$[ebp+8], 5

; 461  :         if(Setting.IsValid())

  0021a	8d 4d d4	 lea	 ecx, DWORD PTR _Setting$152199[ebp]
  0021d	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCSimpleSetting@@@@QBEHXZ ; SmartPtr<CSimpleSetting>::IsValid
  00222	85 c0		 test	 eax, eax
  00224	74 1c		 je	 SHORT $LN2@HandleSett

; 462  :         {
; 463  :             *bDone = TRUE;

  00226	8b 4d 18	 mov	 ecx, DWORD PTR _bDone$[ebp]
  00229	c7 01 01 00 00
	00		 mov	 DWORD PTR [ecx], 1

; 464  :             Setting->ChangeValue((eCHANGEVALUE)lParam);

  0022f	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00232	52		 push	 edx
  00233	8d 4d d4	 lea	 ecx, DWORD PTR _Setting$152199[ebp]
  00236	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSimpleSetting@@@@QBEPAVCSimpleSetting@@XZ ; SmartPtr<CSimpleSetting>::operator->
  0023b	8b c8		 mov	 ecx, eax
  0023d	e8 00 00 00 00	 call	 ?ChangeValue@CSimpleSetting@@QAEXW4eCHANGEVALUE@@@Z ; CSimpleSetting::ChangeValue
$LN2@HandleSett:

; 465  :         }
; 466  :         return 0;

  00242	c7 45 b4 00 00
	00 00		 mov	 DWORD PTR $T358686[ebp], 0
  00249	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  0024d	8d 4d d4	 lea	 ecx, DWORD PTR _Setting$152199[ebp]
  00250	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
  00255	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0025c	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0025f	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  00264	8b 45 b4	 mov	 eax, DWORD PTR $T358686[ebp]
  00267	eb 2c		 jmp	 SHORT $LN9@HandleSett

; 467  :     }
; 468  :     else

  00269	eb 1b		 jmp	 SHORT $LN1@HandleSett
$LN3@HandleSett:

; 469  :     {
; 470  :         return 0;

  0026b	c7 45 b0 00 00
	00 00		 mov	 DWORD PTR $T358687[ebp], 0
  00272	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00279	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  0027c	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
  00281	8b 45 b0	 mov	 eax, DWORD PTR $T358687[ebp]
  00284	eb 0f		 jmp	 SHORT $LN9@HandleSett
$LN1@HandleSett:

; 471  :     }
; 472  : }

  00286	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0028d	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  00290	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
$LN9@HandleSett:
  00295	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00298	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0029f	59		 pop	 ecx
  002a0	8b e5		 mov	 esp, ebp
  002a2	5d		 pop	 ebp
  002a3	c2 14 00	 ret	 20			; 00000014H
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$0:
  00000	8d 4d ec	 lea	 ecx, DWORD PTR _Holder$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$1:
  00008	8d 4d e4	 lea	 ecx, DWORD PTR _Setting$152183[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$2:
  00010	8d 4d c4	 lea	 ecx, DWORD PTR $T358683[ebp]
  00013	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$3:
  00018	8d 4d dc	 lea	 ecx, DWORD PTR _Setting$152192[ebp]
  0001b	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$4:
  00020	8d 4d b8	 lea	 ecx, DWORD PTR $T358685[ebp]
  00023	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__unwindfunclet$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z$5:
  00028	8d 4d d4	 lea	 ecx, DWORD PTR _Setting$152199[ebp]
  0002b	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSimpleSetting@@@@QAE@XZ ; SmartPtr<CSimpleSetting>::~SmartPtr<CSimpleSetting>
__ehhandler$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z:
  00030	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00034	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00037	8b 4a 9c	 mov	 ecx, DWORD PTR [edx-100]
  0003a	33 c8		 xor	 ecx, eax
  0003c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00041	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z
  00046	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?HandleSettingMsgs@CSettingsMaster@@QAEJPAUHWND__@@IIJPAH@Z ENDP ; CSettingsMaster::HandleSettingMsgs
PUBLIC	?Initialize@CSettingsMaster@@QAEXXZ		; CSettingsMaster::Initialize
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Initialize@CSettingsMaster@@QAEXXZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Initialize@CSettingsMaster@@QAEXXZ$0
__ehfuncinfo$?Initialize@CSettingsMaster@@QAEXXZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Initialize@CSettingsMaster@@QAEXXZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Initialize@CSettingsMaster@@QAEXXZ
_TEXT	SEGMENT
tv202 = -44						; size = 4
tv203 = -40						; size = 4
_this$ = -36						; size = 4
$T358703 = -32						; size = 8
$T358702 = -24						; size = 4
_it$151831 = -20					; size = 8
__$EHRec$ = -12						; size = 12
?Initialize@CSettingsMaster@@QAEXXZ PROC		; CSettingsMaster::Initialize, COMDAT
; _this$ = ecx

; 73   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Initialize@CSettingsMaster@@QAEXXZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 20	 sub	 esp, 32			; 00000020H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00025	89 4d dc	 mov	 DWORD PTR _this$[ebp], ecx

; 74   :     AddSettings(WM_DEBUG_GETVALUE, (GENERICGETSETTING)Debug_GetSetting);

  00028	68 00 00 00 00	 push	 OFFSET ?Debug_GetSetting@@YAPAUSETTING@@W4DEBUG_SETTING@@@Z ; Debug_GetSetting
  0002d	68 1d 80 00 00	 push	 32797			; 0000801dH
  00032	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00035	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 75   :     Register(Aspect_GetSettingsHolder());

  0003a	83 ec 08	 sub	 esp, 8
  0003d	8b c4		 mov	 eax, esp
  0003f	89 65 e8	 mov	 DWORD PTR $T358702[ebp], esp
  00042	50		 push	 eax
  00043	e8 00 00 00 00	 call	 ?Aspect_GetSettingsHolder@@YA?AV?$SmartPtr@VCSettingsHolder@@@@XZ ; Aspect_GetSettingsHolder
  00048	83 c4 04	 add	 esp, 4
  0004b	89 45 d8	 mov	 DWORD PTR tv203[ebp], eax
  0004e	8b 4d d8	 mov	 ecx, DWORD PTR tv203[ebp]
  00051	89 4d d4	 mov	 DWORD PTR tv202[ebp], ecx
  00054	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0005b	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00062	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00065	e8 00 00 00 00	 call	 ?Register@CSettingsMaster@@QAEXV?$SmartPtr@VCSettingsHolder@@@@@Z ; CSettingsMaster::Register

; 76   :     AddSettings(WM_DSCALER_GETVALUE, (GENERICGETSETTING)DScaler_GetSetting);

  0006a	68 00 00 00 00	 push	 OFFSET ?DScaler_GetSetting@@YAPAUSETTING@@W4DSCALER_SETTING@@@Z ; DScaler_GetSetting
  0006f	68 03 80 00 00	 push	 32771			; 00008003H
  00074	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00077	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 77   :     AddSettings(WM_OUTTHREADS_GETVALUE, (GENERICGETSETTING)OutThreads_GetSetting);

  0007c	68 00 00 00 00	 push	 OFFSET ?OutThreads_GetSetting@@YAPAUSETTING@@W4OUTTHREADS_SETTING@@@Z ; OutThreads_GetSetting
  00081	68 04 80 00 00	 push	 32772			; 00008004H
  00086	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00089	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 78   :     AddSettings(WM_OTHER_GETVALUE, (GENERICGETSETTING)Overlay_GetSetting);

  0008e	68 00 00 00 00	 push	 OFFSET ?Overlay_GetSetting@@YAPAUSETTING@@W4OTHER_SETTING@@@Z ; Overlay_GetSetting
  00093	68 05 80 00 00	 push	 32773			; 00008005H
  00098	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  0009b	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 79   :     AddSettings(WM_FD50_GETVALUE, (GENERICGETSETTING)FD50_GetSetting);

  000a0	68 00 00 00 00	 push	 OFFSET ?FD50_GetSetting@@YAPAUSETTING@@W4FD50_SETTING@@@Z ; FD50_GetSetting
  000a5	68 06 80 00 00	 push	 32774			; 00008006H
  000aa	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  000ad	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 80   :     AddSettings(WM_FD60_GETVALUE, (GENERICGETSETTING)FD60_GetSetting);

  000b2	68 00 00 00 00	 push	 OFFSET ?FD60_GetSetting@@YAPAUSETTING@@W4FD60_SETTING@@@Z ; FD60_GetSetting
  000b7	68 07 80 00 00	 push	 32775			; 00008007H
  000bc	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  000bf	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 81   :     AddSettings(WM_FD_COMMON_GETVALUE, (GENERICGETSETTING)FD_Common_GetSetting);

  000c4	68 00 00 00 00	 push	 OFFSET ?FD_Common_GetSetting@@YAPAUSETTING@@W4FD_COMMON_SETTING@@@Z ; FD_Common_GetSetting
  000c9	68 08 80 00 00	 push	 32776			; 00008008H
  000ce	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  000d1	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 82   :     AddSettings(WM_OSD_GETVALUE, (GENERICGETSETTING)OSD_GetSetting);

  000d6	68 00 00 00 00	 push	 OFFSET ?OSD_GetSetting@@YAPAUSETTING@@W4OSD_SETTING@@@Z ; OSD_GetSetting
  000db	68 12 80 00 00	 push	 32786			; 00008012H
  000e0	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  000e3	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 83   :     AddSettings(WM_VBI_GETVALUE, (GENERICGETSETTING)VBI_GetSetting);

  000e8	68 00 00 00 00	 push	 OFFSET ?VBI_GetSetting@@YAPAUSETTING@@W4VBI_SETTING@@@Z ; VBI_GetSetting
  000ed	68 15 80 00 00	 push	 32789			; 00008015H
  000f2	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  000f5	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 84   :     AddSettings(WM_TIMING_GETVALUE, (GENERICGETSETTING)Timing_GetSetting);

  000fa	68 00 00 00 00	 push	 OFFSET ?Timing_GetSetting@@YAPAUSETTING@@W4TIMING_SETTING@@@Z ; Timing_GetSetting
  000ff	68 1a 80 00 00	 push	 32794			; 0000801aH
  00104	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00107	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 85   :     AddSettings(WM_CHANNELS_GETVALUE, (GENERICGETSETTING)Channels_GetSetting);

  0010c	68 00 00 00 00	 push	 OFFSET ?Channels_GetSetting@@YAPAUSETTING@@W4CHANNELS_SETTING@@@Z ; Channels_GetSetting
  00111	68 1b 80 00 00	 push	 32795			; 0000801bH
  00116	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00119	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 86   :     AddSettings(WM_AUDIO_GETVALUE, (GENERICGETSETTING)Audio_GetSetting);

  0011e	68 00 00 00 00	 push	 OFFSET ?Audio_GetSetting@@YAPAUSETTING@@W4AUDIO_SETTING@@@Z ; Audio_GetSetting
  00123	68 1c 80 00 00	 push	 32796			; 0000801cH
  00128	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  0012b	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 87   :     AddSettings(WM_VT_GETVALUE, (GENERICGETSETTING)VT_GetSetting);

  00130	68 00 00 00 00	 push	 OFFSET ?VT_GetSetting@@YAPAUSETTING@@W4VT_SETTING@@@Z ; VT_GetSetting
  00135	68 1f 80 00 00	 push	 32799			; 0000801fH
  0013a	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  0013d	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 88   :     AddSettings(WM_CALIBR_GETVALUE, (GENERICGETSETTING)Calibr_GetSetting);

  00142	68 00 00 00 00	 push	 OFFSET ?Calibr_GetSetting@@YAPAUSETTING@@W4CALIBR_SETTING@@@Z ; Calibr_GetSetting
  00147	68 24 80 00 00	 push	 32804			; 00008024H
  0014c	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  0014f	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 89   :     AddSettings(WM_STILL_GETVALUE, (GENERICGETSETTING)Still_GetSetting);

  00154	68 00 00 00 00	 push	 OFFSET ?Still_GetSetting@@YAPAUSETTING@@W4STILL_SETTING@@@Z ; Still_GetSetting
  00159	68 29 80 00 00	 push	 32809			; 00008029H
  0015e	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00161	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 90   :     AddSettings(WM_ANTIPLOP_GETVALUE, (GENERICGETSETTING)AntiPlop_GetSetting);

  00166	68 00 00 00 00	 push	 OFFSET ?AntiPlop_GetSetting@@YAPAUSETTING@@W4ANTIPLOP_SETTING@@@Z ; AntiPlop_GetSetting
  0016b	68 2b 80 00 00	 push	 32811			; 0000802bH
  00170	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00173	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 91   :     AddSettings(WM_SETTINGSPERCHANNEL_GETVALUE, (GENERICGETSETTING)SettingsPerChannel_GetSetting);

  00178	68 00 00 00 00	 push	 OFFSET ?SettingsPerChannel_GetSetting@@YAPAUSETTING@@H@Z ; SettingsPerChannel_GetSetting
  0017d	68 2d 80 00 00	 push	 32813			; 0000802dH
  00182	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00185	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 92   :     AddSettings(WM_FDPROG_GETVALUE, (GENERICGETSETTING)FDProg_GetSetting);

  0018a	68 00 00 00 00	 push	 OFFSET ?FDProg_GetSetting@@YAPAUSETTING@@W4FDPROG_SETTING@@@Z ; FDProg_GetSetting
  0018f	68 30 80 00 00	 push	 32816			; 00008030H
  00194	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  00197	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 93   :     AddSettings(WM_EPG_GETVALUE, (GENERICGETSETTING)EPG_GetSetting);

  0019c	68 00 00 00 00	 push	 OFFSET ?EPG_GetSetting@@YAPAUSETTING@@W4EPG_SETTING@@@Z ; EPG_GetSetting
  001a1	68 3a 80 00 00	 push	 32826			; 0000803aH
  001a6	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  001a9	e8 00 00 00 00	 call	 ?AddSettings@CSettingsMaster@@AAEXJP6APAUSETTING@@J@Z@Z ; CSettingsMaster::AddSettings

; 94   :     //AddSettings(WM_D3D9_GETVALUE, (GENERICGETSETTING)D3D9_GetSetting);
; 95   : 
; 96   :     for(Holders::iterator it = m_Holders.begin(); it != m_Holders.end(); ++it)

  001ae	8d 55 ec	 lea	 edx, DWORD PTR _it$151831[ebp]
  001b1	52		 push	 edx
  001b2	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  001b5	e8 00 00 00 00	 call	 ?begin@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::begin
  001ba	eb 08		 jmp	 SHORT $LN3@Initialize@15
$LN2@Initialize@15:
  001bc	8d 4d ec	 lea	 ecx, DWORD PTR _it$151831[ebp]
  001bf	e8 00 00 00 00	 call	 ??E?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator++
$LN3@Initialize@15:
  001c4	8d 45 e0	 lea	 eax, DWORD PTR $T358703[ebp]
  001c7	50		 push	 eax
  001c8	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  001cb	e8 00 00 00 00	 call	 ?end@?$vector@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@2@XZ ; std::vector<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::end
  001d0	50		 push	 eax
  001d1	8d 4d ec	 lea	 ecx, DWORD PTR _it$151831[ebp]
  001d4	e8 00 00 00 00	 call	 ??9?$_Vector_const_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBE_NABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator!=
  001d9	0f b6 c8	 movzx	 ecx, al
  001dc	85 c9		 test	 ecx, ecx
  001de	74 44		 je	 SHORT $LN1@Initialize@15

; 97   :     {
; 98   :         (*it)->DisableOnChange();

  001e0	8d 4d ec	 lea	 ecx, DWORD PTR _it$151831[ebp]
  001e3	e8 00 00 00 00	 call	 ??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
  001e8	8b c8		 mov	 ecx, eax
  001ea	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  001ef	8b c8		 mov	 ecx, eax
  001f1	e8 00 00 00 00	 call	 ?DisableOnChange@CSettingsHolder@@QAEXXZ ; CSettingsHolder::DisableOnChange

; 99   :         (*it)->ReadFromIni();

  001f6	8d 4d ec	 lea	 ecx, DWORD PTR _it$151831[ebp]
  001f9	e8 00 00 00 00	 call	 ??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
  001fe	8b c8		 mov	 ecx, eax
  00200	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  00205	8b c8		 mov	 ecx, eax
  00207	e8 00 00 00 00	 call	 ?ReadFromIni@CSettingsHolder@@QAEXXZ ; CSettingsHolder::ReadFromIni

; 100  :         (*it)->EnableOnChange();

  0020c	8d 4d ec	 lea	 ecx, DWORD PTR _it$151831[ebp]
  0020f	e8 00 00 00 00	 call	 ??D?$_Vector_iterator@V?$SmartPtr@VCSettingsHolder@@@@V?$allocator@V?$SmartPtr@VCSettingsHolder@@@@@std@@@std@@QBEAAV?$SmartPtr@VCSettingsHolder@@@@XZ ; std::_Vector_iterator<SmartPtr<CSettingsHolder>,std::allocator<SmartPtr<CSettingsHolder> > >::operator*
  00214	8b c8		 mov	 ecx, eax
  00216	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsHolder@@@@QBEPAVCSettingsHolder@@XZ ; SmartPtr<CSettingsHolder>::operator->
  0021b	8b c8		 mov	 ecx, eax
  0021d	e8 00 00 00 00	 call	 ?EnableOnChange@CSettingsHolder@@QAEXXZ ; CSettingsHolder::EnableOnChange

; 101  :     }

  00222	eb 98		 jmp	 SHORT $LN2@Initialize@15
$LN1@Initialize@15:

; 102  : 
; 103  :     Providers_ReadFromIni();

  00224	e8 00 00 00 00	 call	 ?Providers_ReadFromIni@@YAXXZ ; Providers_ReadFromIni

; 104  : }

  00229	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0022c	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00233	59		 pop	 ecx
  00234	8b e5		 mov	 esp, ebp
  00236	5d		 pop	 ebp
  00237	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Initialize@CSettingsMaster@@QAEXXZ$0:
  00000	8b 4d e8	 mov	 ecx, DWORD PTR $T358702[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCSettingsHolder@@@@QAE@XZ ; SmartPtr<CSettingsHolder>::~SmartPtr<CSettingsHolder>
__ehhandler$?Initialize@CSettingsMaster@@QAEXXZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a dc	 mov	 ecx, DWORD PTR [edx-36]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Initialize@CSettingsMaster@@QAEXXZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Initialize@CSettingsMaster@@QAEXXZ ENDP		; CSettingsMaster::Initialize
END
