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

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

INCLUDELIB OLDNAMES

PUBLIC	??_R4NullPointerException@@6B@			; NullPointerException::`RTTI Complete Object Locator'
PUBLIC	??_R3NullPointerException@@8			; NullPointerException::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2NullPointerException@@8			; NullPointerException::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@NullPointerException@@8		; NullPointerException::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AUNullPointerException@@@8		; NullPointerException `RTTI Type Descriptor'
PUBLIC	??_R4length_error@std@@6B@			; std::length_error::`RTTI Complete Object Locator'
PUBLIC	??_R3length_error@std@@8			; std::length_error::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2length_error@std@@8			; std::length_error::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@length_error@std@@8		; std::length_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R4logic_error@std@@6B@			; std::logic_error::`RTTI Complete Object Locator'
PUBLIC	??_R3logic_error@std@@8				; std::logic_error::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2logic_error@std@@8				; std::logic_error::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@logic_error@std@@8		; std::logic_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R4bad_alloc@std@@6B@				; std::bad_alloc::`RTTI Complete Object Locator'
PUBLIC	??_R3bad_alloc@std@@8				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2bad_alloc@std@@8				; std::bad_alloc::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@exception@std@@8			; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R3exception@std@@8				; std::exception::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2exception@std@@8				; std::exception::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@bad_alloc@std@@8			; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	?adjustAspect@CMasterFilterChain@@UAEXAAVCAspectRectangles@@AAH@Z ; CMasterFilterChain::adjustAspect
PUBLIC	?getFilterName@CMasterFilterChain@@UAEPB_WXZ	; CMasterFilterChain::getFilterName
PUBLIC	??_R4CMasterFilterChain@@6B@			; CMasterFilterChain::`RTTI Complete Object Locator'
PUBLIC	??_R3CMasterFilterChain@@8			; CMasterFilterChain::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CMasterFilterChain@@8			; CMasterFilterChain::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CMasterFilterChain@@8		; CMasterFilterChain::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCMasterFilterChain@@@8			; CMasterFilterChain `RTTI Type Descriptor'
PUBLIC	?adjustAspect@CResizeWindowAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CResizeWindowAspectFilter::adjustAspect
PUBLIC	?getFilterName@CResizeWindowAspectFilter@@UAEPB_WXZ ; CResizeWindowAspectFilter::getFilterName
PUBLIC	??_R4CResizeWindowAspectFilter@@6B@		; CResizeWindowAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CResizeWindowAspectFilter@@8		; CResizeWindowAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CResizeWindowAspectFilter@@8		; CResizeWindowAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CResizeWindowAspectFilter@@8	; CResizeWindowAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCResizeWindowAspectFilter@@@8		; CResizeWindowAspectFilter `RTTI Type Descriptor'
PUBLIC	?adjustAspect@CScreenSanityAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CScreenSanityAspectFilter::adjustAspect
PUBLIC	?getFilterName@CScreenSanityAspectFilter@@UAEPB_WXZ ; CScreenSanityAspectFilter::getFilterName
PUBLIC	??_R4CScreenSanityAspectFilter@@6B@		; CScreenSanityAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CScreenSanityAspectFilter@@8		; CScreenSanityAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CScreenSanityAspectFilter@@8		; CScreenSanityAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CScreenSanityAspectFilter@@8	; CScreenSanityAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCScreenSanityAspectFilter@@@8		; CScreenSanityAspectFilter `RTTI Type Descriptor'
PUBLIC	?DebugDump@CPanAndZoomAspectFilter@@UAEXXZ	; CPanAndZoomAspectFilter::DebugDump
PUBLIC	?adjustAspect@CPanAndZoomAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CPanAndZoomAspectFilter::adjustAspect
PUBLIC	?getFilterName@CPanAndZoomAspectFilter@@UAEPB_WXZ ; CPanAndZoomAspectFilter::getFilterName
PUBLIC	??_R4CPanAndZoomAspectFilter@@6B@		; CPanAndZoomAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CPanAndZoomAspectFilter@@8			; CPanAndZoomAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CPanAndZoomAspectFilter@@8			; CPanAndZoomAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CPanAndZoomAspectFilter@@8	; CPanAndZoomAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCPanAndZoomAspectFilter@@@8		; CPanAndZoomAspectFilter `RTTI Type Descriptor'
PUBLIC	?adjustAspect@CUnCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CUnCropAspectFilter::adjustAspect
PUBLIC	?getFilterName@CUnCropAspectFilter@@UAEPB_WXZ	; CUnCropAspectFilter::getFilterName
PUBLIC	??_R4CUnCropAspectFilter@@6B@			; CUnCropAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CUnCropAspectFilter@@8			; CUnCropAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CUnCropAspectFilter@@8			; CUnCropAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CUnCropAspectFilter@@8		; CUnCropAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCUnCropAspectFilter@@@8			; CUnCropAspectFilter `RTTI Type Descriptor'
PUBLIC	?adjustAspect@CCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CCropAspectFilter::adjustAspect
PUBLIC	?getFilterName@CCropAspectFilter@@UAEPB_WXZ	; CCropAspectFilter::getFilterName
PUBLIC	??_R4CCropAspectFilter@@6B@			; CCropAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CCropAspectFilter@@8			; CCropAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CCropAspectFilter@@8			; CCropAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CCropAspectFilter@@8		; CCropAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCCropAspectFilter@@@8			; CCropAspectFilter `RTTI Type Descriptor'
PUBLIC	?DebugDump@CPositionDestinationAspectFilter@@UAEXXZ ; CPositionDestinationAspectFilter::DebugDump
PUBLIC	?adjustAspect@CPositionDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CPositionDestinationAspectFilter::adjustAspect
PUBLIC	?getFilterName@CPositionDestinationAspectFilter@@UAEPB_WXZ ; CPositionDestinationAspectFilter::getFilterName
PUBLIC	??_R4CPositionDestinationAspectFilter@@6B@	; CPositionDestinationAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CPositionDestinationAspectFilter@@8	; CPositionDestinationAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CPositionDestinationAspectFilter@@8	; CPositionDestinationAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CPositionDestinationAspectFilter@@8 ; CPositionDestinationAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCPositionDestinationAspectFilter@@@8	; CPositionDestinationAspectFilter `RTTI Type Descriptor'
PUBLIC	?DebugDump@CBounceDestinationAspectFilter@@UAEXXZ ; CBounceDestinationAspectFilter::DebugDump
PUBLIC	?adjustAspect@CBounceDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CBounceDestinationAspectFilter::adjustAspect
PUBLIC	?getFilterName@CBounceDestinationAspectFilter@@UAEPB_WXZ ; CBounceDestinationAspectFilter::getFilterName
PUBLIC	??_R4CBounceDestinationAspectFilter@@6B@	; CBounceDestinationAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CBounceDestinationAspectFilter@@8		; CBounceDestinationAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CBounceDestinationAspectFilter@@8		; CBounceDestinationAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CBounceDestinationAspectFilter@@8	; CBounceDestinationAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCBounceDestinationAspectFilter@@@8	; CBounceDestinationAspectFilter `RTTI Type Descriptor'
PUBLIC	?DebugDump@COrbitAspectFilter@@UAEXXZ		; COrbitAspectFilter::DebugDump
PUBLIC	?adjustAspect@COrbitAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; COrbitAspectFilter::adjustAspect
PUBLIC	?getFilterName@COrbitAspectFilter@@UAEPB_WXZ	; COrbitAspectFilter::getFilterName
PUBLIC	??_R4COrbitAspectFilter@@6B@			; COrbitAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3COrbitAspectFilter@@8			; COrbitAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2COrbitAspectFilter@@8			; COrbitAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@COrbitAspectFilter@@8		; COrbitAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCOrbitAspectFilter@@@8			; COrbitAspectFilter `RTTI Type Descriptor'
PUBLIC	?DebugDump@CAnalogueBlankingFilter@@UAEXXZ	; CAnalogueBlankingFilter::DebugDump
PUBLIC	?adjustAspect@CAnalogueBlankingFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; CAnalogueBlankingFilter::adjustAspect
PUBLIC	?getFilterName@CAnalogueBlankingFilter@@UAEPB_WXZ ; CAnalogueBlankingFilter::getFilterName
PUBLIC	??_R4CAnalogueBlankingFilter@@6B@		; CAnalogueBlankingFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CAnalogueBlankingFilter@@8			; CAnalogueBlankingFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CAnalogueBlankingFilter@@8			; CAnalogueBlankingFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CAnalogueBlankingFilter@@8	; CAnalogueBlankingFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCAnalogueBlankingFilter@@@8		; CAnalogueBlankingFilter `RTTI Type Descriptor'
PUBLIC	?DebugDump@COverscanAspectFilter@@UAEXXZ	; COverscanAspectFilter::DebugDump
PUBLIC	?adjustAspect@COverscanAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ; COverscanAspectFilter::adjustAspect
PUBLIC	?getFilterName@COverscanAspectFilter@@UAEPB_WXZ	; COverscanAspectFilter::getFilterName
PUBLIC	??_R4COverscanAspectFilter@@6B@			; COverscanAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3COverscanAspectFilter@@8			; COverscanAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2COverscanAspectFilter@@8			; COverscanAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@COverscanAspectFilter@@8		; COverscanAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCOverscanAspectFilter@@@8		; COverscanAspectFilter `RTTI Type Descriptor'
PUBLIC	?DebugDump@CAspectFilter@@UAEXXZ		; CAspectFilter::DebugDump
PUBLIC	??_R4CAspectFilter@@6B@				; CAspectFilter::`RTTI Complete Object Locator'
PUBLIC	??_R3CAspectFilter@@8				; CAspectFilter::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CAspectFilter@@8				; CAspectFilter::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CAspectFilter@@8			; CAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCAspectFilter@@@8			; CAspectFilter `RTTI Type Descriptor'
PUBLIC	__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
PUBLIC	??_R0?AVexception@std@@@8			; std::exception `RTTI Type Descriptor'
PUBLIC	__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40
PUBLIC	??_R0?AVlogic_error@std@@@8			; std::logic_error `RTTI Type Descriptor'
PUBLIC	??_R0?AVlength_error@std@@@8			; std::length_error `RTTI Type Descriptor'
PUBLIC	?DebugDump@CAspectRect@@QAEXPB_W@Z		; CAspectRect::DebugDump
PUBLIC	??_GCAspectFilter@@UAEPAXI@Z			; CAspectFilter::`scalar deleting destructor'
PUBLIC	??1COverscanAspectFilter@@UAE@XZ		; COverscanAspectFilter::~COverscanAspectFilter
PUBLIC	??_GCOverscanAspectFilter@@UAEPAXI@Z		; COverscanAspectFilter::`scalar deleting destructor'
PUBLIC	??1CAnalogueBlankingFilter@@UAE@XZ		; CAnalogueBlankingFilter::~CAnalogueBlankingFilter
PUBLIC	??_GCAnalogueBlankingFilter@@UAEPAXI@Z		; CAnalogueBlankingFilter::`scalar deleting destructor'
PUBLIC	??1COrbitAspectFilter@@UAE@XZ			; COrbitAspectFilter::~COrbitAspectFilter
PUBLIC	??_GCOrbitAspectFilter@@UAEPAXI@Z		; COrbitAspectFilter::`scalar deleting destructor'
PUBLIC	?acquire@?$SmartPtr@VCPeriodBouncer@@@@AAEXPAUCounter@@@Z ; SmartPtr<CPeriodBouncer>::acquire
PUBLIC	??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z ; SmartPtr<CPeriodBouncer>::SmartPtr<CPeriodBouncer>
PUBLIC	?Clear@?$SmartPtr@VCPeriodBouncer@@@@QAEXXZ	; SmartPtr<CPeriodBouncer>::Clear
PUBLIC	??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ		; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
PUBLIC	??1CBounceDestinationAspectFilter@@UAE@XZ	; CBounceDestinationAspectFilter::~CBounceDestinationAspectFilter
PUBLIC	??_GCBounceDestinationAspectFilter@@UAEPAXI@Z	; CBounceDestinationAspectFilter::`scalar deleting destructor'
PUBLIC	?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::GetRawPointer
PUBLIC	??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::operator->
PUBLIC	??1CPositionDestinationAspectFilter@@UAE@XZ	; CPositionDestinationAspectFilter::~CPositionDestinationAspectFilter
PUBLIC	??_GCPositionDestinationAspectFilter@@UAEPAXI@Z	; CPositionDestinationAspectFilter::`scalar deleting destructor'
PUBLIC	?targetAspect@CAspectRect@@QAENXZ		; CAspectRect::targetAspect
PUBLIC	?adjustSourceAspectByGrowth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByGrowth
PUBLIC	?adjustTargetAspectByGrowth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustTargetAspectByGrowth
PUBLIC	?adjustSourceAspectByShrink@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByShrink
PUBLIC	?adjustTargetAspectByShrink@CAspectRect@@QAEXN@Z ; CAspectRect::adjustTargetAspectByShrink
PUBLIC	??1CPanAndZoomAspectFilter@@UAE@XZ		; CPanAndZoomAspectFilter::~CPanAndZoomAspectFilter
PUBLIC	??_GCPanAndZoomAspectFilter@@UAEPAXI@Z		; CPanAndZoomAspectFilter::`scalar deleting destructor'
PUBLIC	?shrink@CAspectRect@@QAEXHHHH@Z			; CAspectRect::shrink
PUBLIC	?shift@CAspectRect@@QAEXHH@Z			; CAspectRect::shift
PUBLIC	??1CScreenSanityAspectFilter@@UAE@XZ		; CScreenSanityAspectFilter::~CScreenSanityAspectFilter
PUBLIC	??_GCScreenSanityAspectFilter@@UAEPAXI@Z	; CScreenSanityAspectFilter::`scalar deleting destructor'
PUBLIC	?align@CAspectRect@@QAEXHHHH@Z			; CAspectRect::align
PUBLIC	?align@CAspectRect@@QAEXH@Z			; CAspectRect::align
PUBLIC	?crop@CAspectRect@@QAEXUtagRECT@@PAV1@@Z	; CAspectRect::crop
PUBLIC	?cropToFitRect@CAspectRect@@QAEXABUtagRECT@@@Z	; CAspectRect::cropToFitRect
PUBLIC	?GetDestSizeAlign@IOutput@@QBEKXZ		; IOutput::GetDestSizeAlign
PUBLIC	?GetSrcSizeAlign@IOutput@@QBEKXZ		; IOutput::GetSrcSizeAlign
PUBLIC	??0CAspectRect@@QAE@XZ				; CAspectRect::CAspectRect
PUBLIC	??4CAspectRect@@QAEAAV0@ABV0@@Z			; CAspectRect::operator=
PUBLIC	??0CAspectRect@@QAE@ABV0@@Z			; CAspectRect::CAspectRect
PUBLIC	?abs@@YAJJ@Z					; abs
PUBLIC	?tolerantEquals@CAspectRect@@QAEHABV1@H@Z	; CAspectRect::tolerantEquals
PUBLIC	?RoundTo3dp@CAspectRect@@QAENN@Z		; CAspectRect::RoundTo3dp
PUBLIC	?sourceAspect@CAspectRect@@QAENXZ		; CAspectRect::sourceAspect
PUBLIC	?normalizeRect@CAspectRect@@QAEXXZ		; CAspectRect::normalizeRect
PUBLIC	?enforceMinSize@CAspectRect@@QAEXHH@Z		; CAspectRect::enforceMinSize
PUBLIC	?enforceMinSize@CAspectRect@@QAEXH@Z		; CAspectRect::enforceMinSize
PUBLIC	?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByHeight
PUBLIC	?width@CAspectRect@@QAEHXZ			; CAspectRect::width
PUBLIC	?height@CAspectRect@@QAEHXZ			; CAspectRect::height
PUBLIC	?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z	; CAspectRect::adjustSourceAspectByWidth
PUBLIC	?adjustSourceAspectSmart@CAspectRect@@QAEXNAAUtagRECT@@H@Z ; CAspectRect::adjustSourceAspectSmart
PUBLIC	??0?$SmartPtr@VCAspectFilter@@@@QAE@XZ		; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
PUBLIC	??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
PUBLIC	??0Counter@@QAE@I@Z				; Counter::Counter
PUBLIC	??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z ; SmartPtr<CAspectFilter>::operator=
PUBLIC	??1CCropAspectFilter@@UAE@XZ			; CCropAspectFilter::~CCropAspectFilter
PUBLIC	??_GCCropAspectFilter@@UAEPAXI@Z		; CCropAspectFilter::`scalar deleting destructor'
PUBLIC	??0CCropAspectFilter@@QAE@XZ			; CCropAspectFilter::CCropAspectFilter
PUBLIC	??1CUnCropAspectFilter@@UAE@XZ			; CUnCropAspectFilter::~CUnCropAspectFilter
PUBLIC	??_GCUnCropAspectFilter@@UAEPAXI@Z		; CUnCropAspectFilter::`scalar deleting destructor'
PUBLIC	??0CUnCropAspectFilter@@QAE@XZ			; CUnCropAspectFilter::CUnCropAspectFilter
PUBLIC	??1CResizeWindowAspectFilter@@UAE@XZ		; CResizeWindowAspectFilter::~CResizeWindowAspectFilter
PUBLIC	??_GCResizeWindowAspectFilter@@UAEPAXI@Z	; CResizeWindowAspectFilter::`scalar deleting destructor'
PUBLIC	??0CResizeWindowAspectFilter@@QAE@XZ		; CResizeWindowAspectFilter::CResizeWindowAspectFilter
PUBLIC	??0?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAE@XZ ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >
PUBLIC	??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z ; std::_Aux_cont::_Aux_cont
PUBLIC	??0_Container_base_aux@std@@QAE@XZ		; std::_Container_base_aux::_Container_base_aux
PUBLIC	??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z ; std::_Allocate<std::_Aux_cont>
PUBLIC	?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z ; std::allocator<std::_Aux_cont>::allocate
PUBLIC	??$?0V?$SmartPtr@VCAspectFilter@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CAspectFilter> >
PUBLIC	??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??0?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAE@ABV01@@Z ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >
PUBLIC	??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ; std::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	?_Buy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE_NI@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Buy
PUBLIC	??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??$_Allocate@V?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@IPAV1@@Z ; std::_Allocate<SmartPtr<CAspectFilter> >
PUBLIC	?allocate@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEPAV?$SmartPtr@VCAspectFilter@@@@I@Z ; std::allocator<SmartPtr<CAspectFilter> >::allocate
PUBLIC	?capacity@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::capacity
PUBLIC	?size@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::size
PUBLIC	?max_size@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QBEIXZ ; std::allocator<SmartPtr<CAspectFilter> >::max_size
PUBLIC	?max_size@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::max_size
PUBLIC	??0?$allocator@D@std@@QAE@XZ			; std::allocator<char>::allocator<char>
PUBLIC	??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
PUBLIC	?length@?$char_traits@D@std@@SAIPBD@Z		; std::char_traits<char>::length
PUBLIC	?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Inside
PUBLIC	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
PUBLIC	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
PUBLIC	??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> >
PUBLIC	??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::logic_error::logic_error
PUBLIC	??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::length_error::length_error
PUBLIC	??0?$allocator@D@std@@QAE@ABV01@@Z		; std::allocator<char>::allocator<char>
PUBLIC	??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
PUBLIC	?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z	; std::char_traits<char>::_Move_s
PUBLIC	??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ; std::_Traits_helper::move_s<std::char_traits<char> >
PUBLIC	??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::move_s<std::char_traits<char> >
PUBLIC	?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
PUBLIC	?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size
PUBLIC	??0bad_alloc@std@@QAE@PBD@Z			; std::bad_alloc::bad_alloc
PUBLIC	??1bad_alloc@std@@UAE@XZ			; std::bad_alloc::~bad_alloc
PUBLIC	??_Gbad_alloc@std@@UAEPAXI@Z			; std::bad_alloc::`scalar deleting destructor'
PUBLIC	??0bad_alloc@std@@QAE@ABV01@@Z			; std::bad_alloc::bad_alloc
PUBLIC	??$_Allocate@D@std@@YAPADIPAD@Z			; std::_Allocate<char>
PUBLIC	?allocate@?$allocator@D@std@@QAEPADI@Z		; std::allocator<char>::allocate
PUBLIC	?max_size@?$allocator@D@std@@QBEIXZ		; std::allocator<char>::max_size
PUBLIC	?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size
PUBLIC	?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
PUBLIC	?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow
PUBLIC	?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
PUBLIC	??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
PUBLIC	??0logic_error@std@@QAE@ABV01@@Z		; std::logic_error::logic_error
PUBLIC	?deallocate@?$allocator@D@std@@QAEXPADI@Z	; std::allocator<char>::deallocate
PUBLIC	?assign@?$char_traits@D@std@@SAXAADABD@Z	; std::char_traits<char>::assign
PUBLIC	?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
PUBLIC	?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
PUBLIC	??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ ; std::_Char_traits_cat<std::char_traits<char> >
PUBLIC	?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z	; std::char_traits<char>::_Copy_s
PUBLIC	??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
PUBLIC	??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
PUBLIC	?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy
PUBLIC	??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> >
PUBLIC	?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
PUBLIC	?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::c_str
PUBLIC	?what@logic_error@std@@UBEPBDXZ			; std::logic_error::what
PUBLIC	??_Glogic_error@std@@UAEPAXI@Z			; std::logic_error::`scalar deleting destructor'
PUBLIC	??1logic_error@std@@UAE@XZ			; std::logic_error::~logic_error
PUBLIC	??1length_error@std@@UAE@XZ			; std::length_error::~length_error
PUBLIC	??_Glength_error@std@@UAEPAXI@Z			; std::length_error::`scalar deleting destructor'
PUBLIC	??0length_error@std@@QAE@ABV01@@Z		; std::length_error::length_error
PUBLIC	?_Xlen@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Xlen
PUBLIC	??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ; stdext::unchecked_uninitialized_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??$_Uninit_move@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> >,std::_Undefined_move_tag>
PUBLIC	??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ; stdext::_Unchecked_uninitialized_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??$_Umove@PAV?$SmartPtr@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Umove<SmartPtr<CAspectFilter> *>
PUBLIC	??$_Fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z ; std::_Fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >
PUBLIC	??$fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z ; std::fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >
PUBLIC	??$_Iter_random@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::_Iter_random<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
PUBLIC	??$_Move_cat@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::_Move_cat<SmartPtr<CAspectFilter> *>
PUBLIC	??$_Checked_base@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
PUBLIC	??$_Checked_base@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
PUBLIC	??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@ABV0@@Z	; SmartPtr<CAspectFilter>::operator=
PUBLIC	??$_Copy_backward_opt@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::forward_iterator_tag>
PUBLIC	??$_Copy_backward_opt@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
PUBLIC	??$_Move_backward_opt@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Move_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::random_access_iterator_tag,std::_Undefined_move_tag>
PUBLIC	??$_Unchecked_move_backward@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00@Z ; stdext::_Unchecked_move_backward<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
PUBLIC	?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Insert_n
PUBLIC	??G?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEHABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator-
PUBLIC	??Y?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator+=
PUBLIC	??Y?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator+=
PUBLIC	??H?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE?AV01@H@Z ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator+
PUBLIC	?insert@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@ABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::insert
PUBLIC	??2@YAPAXIPAX@Z					; operator new
PUBLIC	??3@YAXPAX0@Z					; operator delete
PUBLIC	?acquire@?$SmartPtr@VCAspectFilter@@@@AAEXPAUCounter@@@Z ; SmartPtr<CAspectFilter>::acquire
PUBLIC	??0?$SmartPtr@VCAspectFilter@@@@QAE@ABV0@@Z	; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
PUBLIC	??$_Construct@V?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z ; std::_Construct<SmartPtr<CAspectFilter>,SmartPtr<CAspectFilter> >
PUBLIC	?construct@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@ABV3@@Z ; std::allocator<SmartPtr<CAspectFilter> >::construct
PUBLIC	??$_Uninit_fill_n@PAV?$SmartPtr@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??$unchecked_uninitialized_fill_n@PAV?$SmartPtr@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	?_Ufill@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Ufill
PUBLIC	?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
PUBLIC	??1_Container_base_aux@std@@QAE@XZ		; std::_Container_base_aux::~_Container_base_aux
PUBLIC	?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z ; std::allocator<std::_Aux_cont>::deallocate
PUBLIC	??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ; std::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	?deallocate@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@I@Z ; std::allocator<SmartPtr<CAspectFilter> >::deallocate
PUBLIC	??$_Ptr_cat@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::_Ptr_cat<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
PUBLIC	?Clear@?$SmartPtr@VCAspectFilter@@@@QAEXXZ	; SmartPtr<CAspectFilter>::Clear
PUBLIC	??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ		; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
PUBLIC	??_G?$SmartPtr@VCAspectFilter@@@@QAEPAXI@Z	; SmartPtr<CAspectFilter>::`scalar deleting destructor'
PUBLIC	??$_Destroy@V?$SmartPtr@VCAspectFilter@@@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::_Destroy<SmartPtr<CAspectFilter> >
PUBLIC	?destroy@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::allocator<SmartPtr<CAspectFilter> >::destroy
PUBLIC	??$_Destroy_range@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??$_Destroy_range@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	?_Destroy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Destroy
PUBLIC	?_Tidy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Tidy
PUBLIC	??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??1CMasterFilterChain@@UAE@XZ			; CMasterFilterChain::~CMasterFilterChain
PUBLIC	??_GCMasterFilterChain@@UAEPAXI@Z		; CMasterFilterChain::`scalar deleting destructor'
PUBLIC	??1NullPointerException@@UAE@XZ			; NullPointerException::~NullPointerException
PUBLIC	??_GNullPointerException@@UAEPAXI@Z		; NullPointerException::`scalar deleting destructor'
PUBLIC	??0NullPointerException@@QAE@XZ			; NullPointerException::NullPointerException
PUBLIC	?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::GetRawPointer
PUBLIC	??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::operator->
PUBLIC	?begin@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::begin
PUBLIC	?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z ; std::_Iterator_base_aux::_Set_container
PUBLIC	??0_Iterator_base_aux@std@@QAE@XZ		; std::_Iterator_base_aux::_Iterator_base_aux
PUBLIC	??0?$_Iterator_with_base@Urandom_access_iterator_tag@std@@V?$SmartPtr@VCAspectFilter@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ ; std::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &,std::_Iterator_base_aux>::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &,std::_Iterator_base_aux>
PUBLIC	??0?$_Ranit@V?$SmartPtr@VCAspectFilter@@@@HPBV1@ABV1@@std@@QAE@XZ ; std::_Ranit<SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &>::_Ranit<SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &>
PUBLIC	??0?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??0?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	?end@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::end
PUBLIC	?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z ; std::_Iterator_base_aux::_Same_container
PUBLIC	??8?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator==
PUBLIC	??9?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator!=
PUBLIC	??D?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEABV?$SmartPtr@VCAspectFilter@@@@XZ ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator*
PUBLIC	??D?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEAAV?$SmartPtr@VCAspectFilter@@@@XZ ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator*
PUBLIC	?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Aux_cont::_Getcont
PUBLIC	?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Iterator_base_aux::_Getmycont
PUBLIC	?_Has_container@_Iterator_base_aux@std@@QBE_NXZ	; std::_Iterator_base_aux::_Has_container
PUBLIC	??E?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator++
PUBLIC	??E?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator++
PUBLIC	??_C@_1IC@PKOADFGL@?$AA?$CF?$AAs?$AA?3?$AA?5?$AAL?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAR?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAT?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAB?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5@ ; `string'
PUBLIC	??_C@_19HAKLIJIF@?$AAS?$AAR?$AAC?$AA?5?$AA?$AA@	; `string'
PUBLIC	??_C@_19CECMBOHG@?$AAD?$AAE?$AAS?$AAT?$AA?$AA@	; `string'
PUBLIC	??_C@_1CM@MLEDNLNE@?$AAC?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1GE@MPIAGFPN@?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAs?$AA?5?$AA?$CI?$AAT?$AAo?$AAp?$AA?0?$AAB?$AAo?$AAt?$AAt?$AAo?$AAm?$AA?0?$AAL?$AAe?$AAf?$AAt?$AA?0?$AAR?$AAi?$AAg?$AAh?$AAt@ ; `string'
PUBLIC	??_C@_1DA@NNIJHEEI@?$AAC?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1DK@OGIOAPEI@?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CG@LAFGMGLO@?$AAC?$AAO?$AAr?$AAb?$AAi?$AAt?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1FO@JNBGNOJP@?$AAm?$AA_?$AAp?$AAX?$AAO?$AAr?$AAb?$AAi?$AAt?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAr?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAp?$AAY?$AAO?$AAr?$AAb?$AAi@ ; `string'
PUBLIC	??_C@_1DO@GEHFJHFD@?$AAC?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BO@MFKJFIM@?$AAp?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@ ; `string'
PUBLIC	??_C@_1EC@OAKBJCKB@?$AAC?$AAP?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr@ ; `string'
PUBLIC	??_C@_1DG@JPMKLLE@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CE@CEMNGKAP@?$AAC?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CI@PEPEJNPP@?$AAC?$AAU?$AAn?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1DA@OAMGCFIK@?$AAC?$AAP?$AAa?$AAn?$AAA?$AAn?$AAd?$AAZ?$AAo?$AAo?$AAm?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1HC@NLAOHMCK@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAX?$AAZ@ ; `string'
PUBLIC	??_C@_1DE@JHMGFEDD@?$AAC?$AAS?$AAc?$AAr?$AAe?$AAe?$AAn?$AAS?$AAa?$AAn?$AAi?$AAt?$AAy?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1DE@BEFKOAOK@?$AAC?$AAR?$AAe?$AAs?$AAi?$AAz?$AAe?$AAW?$AAi?$AAn?$AAd?$AAo?$AAw?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CI@JAIKPIPL@?$AAM?$AAa?$AAs?$AAt?$AAe?$AAr?$AA?5?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?5?$AAC?$AAh?$AAa?$AAi?$AAn?$AA?$AA@ ; `string'
PUBLIC	??_R0PAUNullPointerException@@@8		; NullPointerException * `RTTI Type Descriptor'
PUBLIC	??_R0PAVexception@std@@@8			; std::exception * `RTTI Type Descriptor'
PUBLIC	??_R0PAX@8					; void * `RTTI Type Descriptor'
PUBLIC	__CT??_R0PAUNullPointerException@@@84
PUBLIC	__CT??_R0PAVexception@std@@@84
PUBLIC	__CT??_R0PAX@84
PUBLIC	__CTA3PAUNullPointerException@@
PUBLIC	__TI3PAUNullPointerException@@
PUBLIC	??_C@_0BD@OLBABOEK@vector?$DMT?$DO?5too?5long?$AA@ ; `string'
PUBLIC	__CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40
PUBLIC	__CTA3?AVlength_error@std@@
PUBLIC	__TI3?AVlength_error@std@@
PUBLIC	??_7CAspectFilter@@6B@				; CAspectFilter::`vftable'
PUBLIC	??_7COverscanAspectFilter@@6B@			; COverscanAspectFilter::`vftable'
PUBLIC	??_7CAnalogueBlankingFilter@@6B@		; CAnalogueBlankingFilter::`vftable'
PUBLIC	??_7COrbitAspectFilter@@6B@			; COrbitAspectFilter::`vftable'
PUBLIC	??_7CBounceDestinationAspectFilter@@6B@		; CBounceDestinationAspectFilter::`vftable'
PUBLIC	??_7CPositionDestinationAspectFilter@@6B@	; CPositionDestinationAspectFilter::`vftable'
PUBLIC	??_7CCropAspectFilter@@6B@			; CCropAspectFilter::`vftable'
PUBLIC	??_7CUnCropAspectFilter@@6B@			; CUnCropAspectFilter::`vftable'
PUBLIC	??_7CPanAndZoomAspectFilter@@6B@		; CPanAndZoomAspectFilter::`vftable'
PUBLIC	??_7CScreenSanityAspectFilter@@6B@		; CScreenSanityAspectFilter::`vftable'
PUBLIC	??_7CResizeWindowAspectFilter@@6B@		; CResizeWindowAspectFilter::`vftable'
PUBLIC	??_7CMasterFilterChain@@6B@			; CMasterFilterChain::`vftable'
PUBLIC	??_C@_0DD@JDNKHFEP@?$FLSmartPtr?5Exception?$FN?5Attempted?5t@ ; `string'
PUBLIC	?npos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@2IB ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::npos
PUBLIC	??_R0?AVbad_alloc@std@@@8			; std::bad_alloc `RTTI Type Descriptor'
PUBLIC	__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
PUBLIC	__CTA2?AVbad_alloc@std@@
PUBLIC	__TI2?AVbad_alloc@std@@
PUBLIC	??_7bad_alloc@std@@6B@				; std::bad_alloc::`vftable'
PUBLIC	??_7logic_error@std@@6B@			; std::logic_error::`vftable'
PUBLIC	??_7length_error@std@@6B@			; std::length_error::`vftable'
PUBLIC	??_7NullPointerException@@6B@			; NullPointerException::`vftable'
EXTRN	_fmod:PROC
EXTRN	??_ECAspectFilter@@UAEPAXI@Z:PROC		; CAspectFilter::`vector deleting destructor'
EXTRN	??_ECOverscanAspectFilter@@UAEPAXI@Z:PROC	; COverscanAspectFilter::`vector deleting destructor'
EXTRN	??_ECAnalogueBlankingFilter@@UAEPAXI@Z:PROC	; CAnalogueBlankingFilter::`vector deleting destructor'
EXTRN	??_ECOrbitAspectFilter@@UAEPAXI@Z:PROC		; COrbitAspectFilter::`vector deleting destructor'
EXTRN	__time64:PROC
EXTRN	??_ECBounceDestinationAspectFilter@@UAEPAXI@Z:PROC ; CBounceDestinationAspectFilter::`vector deleting destructor'
EXTRN	??_ECPositionDestinationAspectFilter@@UAEPAXI@Z:PROC ; CPositionDestinationAspectFilter::`vector deleting destructor'
EXTRN	??_ECPanAndZoomAspectFilter@@UAEPAXI@Z:PROC	; CPanAndZoomAspectFilter::`vector deleting destructor'
EXTRN	??_ECScreenSanityAspectFilter@@UAEPAXI@Z:PROC	; CScreenSanityAspectFilter::`vector deleting destructor'
EXTRN	__imp__MulDiv@12:PROC
EXTRN	__imp__SendMessageW@16:PROC
EXTRN	__imp__SetWindowPos@28:PROC
EXTRN	__imp__AdjustWindowRectEx@16:PROC
EXTRN	__imp__ClientToScreen@8:PROC
EXTRN	__imp__GetWindowLongW@8:PROC
EXTRN	_fabs:PROC
EXTRN	_labs:PROC
EXTRN	_floor:PROC
EXTRN	??_ECCropAspectFilter@@UAEPAXI@Z:PROC		; CCropAspectFilter::`vector deleting destructor'
EXTRN	??_ECUnCropAspectFilter@@UAEPAXI@Z:PROC		; CUnCropAspectFilter::`vector deleting destructor'
EXTRN	??_ECResizeWindowAspectFilter@@UAEPAXI@Z:PROC	; CResizeWindowAspectFilter::`vector deleting destructor'
EXTRN	_strlen:PROC
EXTRN	??0exception@std@@QAE@XZ:PROC			; std::exception::exception
EXTRN	?_Xran@_String_base@std@@SAXXZ:PROC		; std::_String_base::_Xran
EXTRN	_memmove_s:PROC
EXTRN	?_Xlen@_String_base@std@@SAXXZ:PROC		; std::_String_base::_Xlen
EXTRN	??0exception@std@@QAE@ABV01@@Z:PROC		; std::exception::exception
EXTRN	??_Ebad_alloc@std@@UAEPAXI@Z:PROC		; std::bad_alloc::`vector deleting destructor'
EXTRN	_memcpy_s:PROC
EXTRN	??_Elogic_error@std@@UAEPAXI@Z:PROC		; std::logic_error::`vector deleting destructor'
EXTRN	??_Elength_error@std@@UAEPAXI@Z:PROC		; std::length_error::`vector deleting destructor'
EXTRN	??_ECMasterFilterChain@@UAEPAXI@Z:PROC		; CMasterFilterChain::`vector deleting destructor'
EXTRN	??2@YAPAXI@Z:PROC				; operator new
EXTRN	??0exception@std@@QAE@ABQBD@Z:PROC		; std::exception::exception
EXTRN	?what@exception@std@@UBEPBDXZ:PROC		; std::exception::what
EXTRN	??1exception@std@@UAE@XZ:PROC			; std::exception::~exception
EXTRN	??_ENullPointerException@@UAEPAXI@Z:PROC	; NullPointerException::`vector deleting destructor'
EXTRN	__invalid_parameter_noinfo:PROC
;	COMDAT ??_7NullPointerException@@6B@
CONST	SEGMENT
??_7NullPointerException@@6B@ DD FLAT:??_R4NullPointerException@@6B@ ; NullPointerException::`vftable'
	DD	FLAT:??_ENullPointerException@@UAEPAXI@Z
	DD	FLAT:?what@exception@std@@UBEPBDXZ
CONST	ENDS
;	COMDAT ??_R4NullPointerException@@6B@
rdata$r	SEGMENT
??_R4NullPointerException@@6B@ DD 00H			; NullPointerException::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AUNullPointerException@@@8
	DD	FLAT:??_R3NullPointerException@@8
rdata$r	ENDS
;	COMDAT ??_R3NullPointerException@@8
rdata$r	SEGMENT
??_R3NullPointerException@@8 DD 00H			; NullPointerException::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2NullPointerException@@8
rdata$r	ENDS
;	COMDAT ??_R2NullPointerException@@8
rdata$r	SEGMENT
??_R2NullPointerException@@8 DD FLAT:??_R1A@?0A@EA@NullPointerException@@8 ; NullPointerException::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@NullPointerException@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@NullPointerException@@8 DD FLAT:??_R0?AUNullPointerException@@@8 ; NullPointerException::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3NullPointerException@@8
rdata$r	ENDS
;	COMDAT ??_R0?AUNullPointerException@@@8
_DATA	SEGMENT
??_R0?AUNullPointerException@@@8 DD FLAT:??_7type_info@@6B@ ; NullPointerException `RTTI Type Descriptor'
	DD	00H
	DB	'.?AUNullPointerException@@', 00H
_DATA	ENDS
;	COMDAT ??_7length_error@std@@6B@
CONST	SEGMENT
??_7length_error@std@@6B@ DD FLAT:??_R4length_error@std@@6B@ ; std::length_error::`vftable'
	DD	FLAT:??_Elength_error@std@@UAEPAXI@Z
	DD	FLAT:?what@logic_error@std@@UBEPBDXZ
CONST	ENDS
;	COMDAT ??_R4length_error@std@@6B@
rdata$r	SEGMENT
??_R4length_error@std@@6B@ DD 00H			; std::length_error::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVlength_error@std@@@8
	DD	FLAT:??_R3length_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R3length_error@std@@8
rdata$r	SEGMENT
??_R3length_error@std@@8 DD 00H				; std::length_error::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	03H
	DD	FLAT:??_R2length_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R2length_error@std@@8
rdata$r	SEGMENT
??_R2length_error@std@@8 DD FLAT:??_R1A@?0A@EA@length_error@std@@8 ; std::length_error::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@logic_error@std@@8
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@length_error@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@length_error@std@@8 DD FLAT:??_R0?AVlength_error@std@@@8 ; std::length_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	02H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3length_error@std@@8
rdata$r	ENDS
;	COMDAT ??_7logic_error@std@@6B@
CONST	SEGMENT
??_7logic_error@std@@6B@ DD FLAT:??_R4logic_error@std@@6B@ ; std::logic_error::`vftable'
	DD	FLAT:??_Elogic_error@std@@UAEPAXI@Z
	DD	FLAT:?what@logic_error@std@@UBEPBDXZ
CONST	ENDS
;	COMDAT ??_R4logic_error@std@@6B@
rdata$r	SEGMENT
??_R4logic_error@std@@6B@ DD 00H			; std::logic_error::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVlogic_error@std@@@8
	DD	FLAT:??_R3logic_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R3logic_error@std@@8
rdata$r	SEGMENT
??_R3logic_error@std@@8 DD 00H				; std::logic_error::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2logic_error@std@@8
rdata$r	ENDS
;	COMDAT ??_R2logic_error@std@@8
rdata$r	SEGMENT
??_R2logic_error@std@@8 DD FLAT:??_R1A@?0A@EA@logic_error@std@@8 ; std::logic_error::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@logic_error@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@logic_error@std@@8 DD FLAT:??_R0?AVlogic_error@std@@@8 ; std::logic_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3logic_error@std@@8
rdata$r	ENDS
;	COMDAT ??_7bad_alloc@std@@6B@
CONST	SEGMENT
??_7bad_alloc@std@@6B@ DD FLAT:??_R4bad_alloc@std@@6B@	; std::bad_alloc::`vftable'
	DD	FLAT:??_Ebad_alloc@std@@UAEPAXI@Z
	DD	FLAT:?what@exception@std@@UBEPBDXZ
CONST	ENDS
;	COMDAT ??_R4bad_alloc@std@@6B@
rdata$r	SEGMENT
??_R4bad_alloc@std@@6B@ DD 00H				; std::bad_alloc::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVbad_alloc@std@@@8
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R3bad_alloc@std@@8
rdata$r	SEGMENT
??_R3bad_alloc@std@@8 DD 00H				; std::bad_alloc::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT ??_R2bad_alloc@std@@8
rdata$r	SEGMENT
??_R2bad_alloc@std@@8 DD FLAT:??_R1A@?0A@EA@bad_alloc@std@@8 ; std::bad_alloc::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@exception@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@exception@std@@8 DD FLAT:??_R0?AVexception@std@@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R3exception@std@@8
rdata$r	SEGMENT
??_R3exception@std@@8 DD 00H				; std::exception::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2exception@std@@8
rdata$r	ENDS
;	COMDAT ??_R2exception@std@@8
rdata$r	SEGMENT
??_R2exception@std@@8 DD FLAT:??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@bad_alloc@std@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@bad_alloc@std@@8 DD FLAT:??_R0?AVbad_alloc@std@@@8 ; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3bad_alloc@std@@8
rdata$r	ENDS
;	COMDAT __TI2?AVbad_alloc@std@@
xdata$x	SEGMENT
__TI2?AVbad_alloc@std@@ DD 00H
	DD	FLAT:??1bad_alloc@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA2?AVbad_alloc@std@@
xdata$x	ENDS
;	COMDAT __CTA2?AVbad_alloc@std@@
xdata$x	SEGMENT
__CTA2?AVbad_alloc@std@@ DD 02H
	DD	FLAT:__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT __CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12
xdata$x	SEGMENT
__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12 DD 00H
	DD	FLAT:??_R0?AVbad_alloc@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	0cH
	DD	FLAT:??0bad_alloc@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT ??_R0?AVbad_alloc@std@@@8
_DATA	SEGMENT
??_R0?AVbad_alloc@std@@@8 DD FLAT:??_7type_info@@6B@	; std::bad_alloc `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVbad_alloc@std@@', 00H
_DATA	ENDS
;	COMDAT ?npos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@2IB
CONST	SEGMENT
?npos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@2IB DD 0ffffffffH ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::npos
CONST	ENDS
;	COMDAT ??_C@_0DD@JDNKHFEP@?$FLSmartPtr?5Exception?$FN?5Attempted?5t@
CONST	SEGMENT
??_C@_0DD@JDNKHFEP@?$FLSmartPtr?5Exception?$FN?5Attempted?5t@ DB '[SmartP'
	DB	'tr Exception] Attempted to use NULL pointer', 00H ; `string'
CONST	ENDS
;	COMDAT ??_7CMasterFilterChain@@6B@
CONST	SEGMENT
??_7CMasterFilterChain@@6B@ DD FLAT:??_R4CMasterFilterChain@@6B@ ; CMasterFilterChain::`vftable'
	DD	FLAT:??_ECMasterFilterChain@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CMasterFilterChain@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CMasterFilterChain@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CMasterFilterChain@@6B@
rdata$r	SEGMENT
??_R4CMasterFilterChain@@6B@ DD 00H			; CMasterFilterChain::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCMasterFilterChain@@@8
	DD	FLAT:??_R3CMasterFilterChain@@8
rdata$r	ENDS
;	COMDAT ??_R3CMasterFilterChain@@8
rdata$r	SEGMENT
??_R3CMasterFilterChain@@8 DD 00H			; CMasterFilterChain::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CMasterFilterChain@@8
rdata$r	ENDS
;	COMDAT ??_R2CMasterFilterChain@@8
rdata$r	SEGMENT
??_R2CMasterFilterChain@@8 DD FLAT:??_R1A@?0A@EA@CMasterFilterChain@@8 ; CMasterFilterChain::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CMasterFilterChain@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CMasterFilterChain@@8 DD FLAT:??_R0?AVCMasterFilterChain@@@8 ; CMasterFilterChain::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CMasterFilterChain@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCMasterFilterChain@@@8
_DATA	SEGMENT
??_R0?AVCMasterFilterChain@@@8 DD FLAT:??_7type_info@@6B@ ; CMasterFilterChain `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCMasterFilterChain@@', 00H
_DATA	ENDS
;	COMDAT ??_7CResizeWindowAspectFilter@@6B@
CONST	SEGMENT
??_7CResizeWindowAspectFilter@@6B@ DD FLAT:??_R4CResizeWindowAspectFilter@@6B@ ; CResizeWindowAspectFilter::`vftable'
	DD	FLAT:??_ECResizeWindowAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CResizeWindowAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CResizeWindowAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CResizeWindowAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CResizeWindowAspectFilter@@6B@ DD 00H		; CResizeWindowAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCResizeWindowAspectFilter@@@8
	DD	FLAT:??_R3CResizeWindowAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CResizeWindowAspectFilter@@8
rdata$r	SEGMENT
??_R3CResizeWindowAspectFilter@@8 DD 00H		; CResizeWindowAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CResizeWindowAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CResizeWindowAspectFilter@@8
rdata$r	SEGMENT
??_R2CResizeWindowAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CResizeWindowAspectFilter@@8 ; CResizeWindowAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CResizeWindowAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CResizeWindowAspectFilter@@8 DD FLAT:??_R0?AVCResizeWindowAspectFilter@@@8 ; CResizeWindowAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CResizeWindowAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCResizeWindowAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCResizeWindowAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CResizeWindowAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCResizeWindowAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CScreenSanityAspectFilter@@6B@
CONST	SEGMENT
??_7CScreenSanityAspectFilter@@6B@ DD FLAT:??_R4CScreenSanityAspectFilter@@6B@ ; CScreenSanityAspectFilter::`vftable'
	DD	FLAT:??_ECScreenSanityAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CScreenSanityAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CScreenSanityAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CScreenSanityAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CScreenSanityAspectFilter@@6B@ DD 00H		; CScreenSanityAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCScreenSanityAspectFilter@@@8
	DD	FLAT:??_R3CScreenSanityAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CScreenSanityAspectFilter@@8
rdata$r	SEGMENT
??_R3CScreenSanityAspectFilter@@8 DD 00H		; CScreenSanityAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CScreenSanityAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CScreenSanityAspectFilter@@8
rdata$r	SEGMENT
??_R2CScreenSanityAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CScreenSanityAspectFilter@@8 ; CScreenSanityAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CScreenSanityAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CScreenSanityAspectFilter@@8 DD FLAT:??_R0?AVCScreenSanityAspectFilter@@@8 ; CScreenSanityAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CScreenSanityAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCScreenSanityAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCScreenSanityAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CScreenSanityAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCScreenSanityAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CPanAndZoomAspectFilter@@6B@
CONST	SEGMENT
??_7CPanAndZoomAspectFilter@@6B@ DD FLAT:??_R4CPanAndZoomAspectFilter@@6B@ ; CPanAndZoomAspectFilter::`vftable'
	DD	FLAT:??_ECPanAndZoomAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CPanAndZoomAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CPanAndZoomAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CPanAndZoomAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CPanAndZoomAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CPanAndZoomAspectFilter@@6B@ DD 00H		; CPanAndZoomAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCPanAndZoomAspectFilter@@@8
	DD	FLAT:??_R3CPanAndZoomAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CPanAndZoomAspectFilter@@8
rdata$r	SEGMENT
??_R3CPanAndZoomAspectFilter@@8 DD 00H			; CPanAndZoomAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CPanAndZoomAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CPanAndZoomAspectFilter@@8
rdata$r	SEGMENT
??_R2CPanAndZoomAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CPanAndZoomAspectFilter@@8 ; CPanAndZoomAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CPanAndZoomAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CPanAndZoomAspectFilter@@8 DD FLAT:??_R0?AVCPanAndZoomAspectFilter@@@8 ; CPanAndZoomAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CPanAndZoomAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCPanAndZoomAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCPanAndZoomAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CPanAndZoomAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCPanAndZoomAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CUnCropAspectFilter@@6B@
CONST	SEGMENT
??_7CUnCropAspectFilter@@6B@ DD FLAT:??_R4CUnCropAspectFilter@@6B@ ; CUnCropAspectFilter::`vftable'
	DD	FLAT:??_ECUnCropAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CUnCropAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CUnCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CUnCropAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CUnCropAspectFilter@@6B@ DD 00H			; CUnCropAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCUnCropAspectFilter@@@8
	DD	FLAT:??_R3CUnCropAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CUnCropAspectFilter@@8
rdata$r	SEGMENT
??_R3CUnCropAspectFilter@@8 DD 00H			; CUnCropAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CUnCropAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CUnCropAspectFilter@@8
rdata$r	SEGMENT
??_R2CUnCropAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CUnCropAspectFilter@@8 ; CUnCropAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CUnCropAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CUnCropAspectFilter@@8 DD FLAT:??_R0?AVCUnCropAspectFilter@@@8 ; CUnCropAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CUnCropAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCUnCropAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCUnCropAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CUnCropAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCUnCropAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CCropAspectFilter@@6B@
CONST	SEGMENT
??_7CCropAspectFilter@@6B@ DD FLAT:??_R4CCropAspectFilter@@6B@ ; CCropAspectFilter::`vftable'
	DD	FLAT:??_ECCropAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CCropAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CCropAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CCropAspectFilter@@6B@ DD 00H			; CCropAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCCropAspectFilter@@@8
	DD	FLAT:??_R3CCropAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CCropAspectFilter@@8
rdata$r	SEGMENT
??_R3CCropAspectFilter@@8 DD 00H			; CCropAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CCropAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CCropAspectFilter@@8
rdata$r	SEGMENT
??_R2CCropAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CCropAspectFilter@@8 ; CCropAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CCropAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CCropAspectFilter@@8 DD FLAT:??_R0?AVCCropAspectFilter@@@8 ; CCropAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CCropAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCCropAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCCropAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CCropAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCCropAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CPositionDestinationAspectFilter@@6B@
CONST	SEGMENT
??_7CPositionDestinationAspectFilter@@6B@ DD FLAT:??_R4CPositionDestinationAspectFilter@@6B@ ; CPositionDestinationAspectFilter::`vftable'
	DD	FLAT:??_ECPositionDestinationAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CPositionDestinationAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CPositionDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CPositionDestinationAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CPositionDestinationAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CPositionDestinationAspectFilter@@6B@ DD 00H	; CPositionDestinationAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCPositionDestinationAspectFilter@@@8
	DD	FLAT:??_R3CPositionDestinationAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CPositionDestinationAspectFilter@@8
rdata$r	SEGMENT
??_R3CPositionDestinationAspectFilter@@8 DD 00H		; CPositionDestinationAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CPositionDestinationAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CPositionDestinationAspectFilter@@8
rdata$r	SEGMENT
??_R2CPositionDestinationAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CPositionDestinationAspectFilter@@8 ; CPositionDestinationAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CPositionDestinationAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CPositionDestinationAspectFilter@@8 DD FLAT:??_R0?AVCPositionDestinationAspectFilter@@@8 ; CPositionDestinationAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CPositionDestinationAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCPositionDestinationAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCPositionDestinationAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CPositionDestinationAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCPositionDestinationAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CBounceDestinationAspectFilter@@6B@
CONST	SEGMENT
??_7CBounceDestinationAspectFilter@@6B@ DD FLAT:??_R4CBounceDestinationAspectFilter@@6B@ ; CBounceDestinationAspectFilter::`vftable'
	DD	FLAT:??_ECBounceDestinationAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CBounceDestinationAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CBounceDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CBounceDestinationAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CBounceDestinationAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CBounceDestinationAspectFilter@@6B@ DD 00H		; CBounceDestinationAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCBounceDestinationAspectFilter@@@8
	DD	FLAT:??_R3CBounceDestinationAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CBounceDestinationAspectFilter@@8
rdata$r	SEGMENT
??_R3CBounceDestinationAspectFilter@@8 DD 00H		; CBounceDestinationAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CBounceDestinationAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CBounceDestinationAspectFilter@@8
rdata$r	SEGMENT
??_R2CBounceDestinationAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CBounceDestinationAspectFilter@@8 ; CBounceDestinationAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CBounceDestinationAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CBounceDestinationAspectFilter@@8 DD FLAT:??_R0?AVCBounceDestinationAspectFilter@@@8 ; CBounceDestinationAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CBounceDestinationAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCBounceDestinationAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCBounceDestinationAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CBounceDestinationAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCBounceDestinationAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7COrbitAspectFilter@@6B@
CONST	SEGMENT
??_7COrbitAspectFilter@@6B@ DD FLAT:??_R4COrbitAspectFilter@@6B@ ; COrbitAspectFilter::`vftable'
	DD	FLAT:??_ECOrbitAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@COrbitAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@COrbitAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@COrbitAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4COrbitAspectFilter@@6B@
rdata$r	SEGMENT
??_R4COrbitAspectFilter@@6B@ DD 00H			; COrbitAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCOrbitAspectFilter@@@8
	DD	FLAT:??_R3COrbitAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3COrbitAspectFilter@@8
rdata$r	SEGMENT
??_R3COrbitAspectFilter@@8 DD 00H			; COrbitAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2COrbitAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2COrbitAspectFilter@@8
rdata$r	SEGMENT
??_R2COrbitAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@COrbitAspectFilter@@8 ; COrbitAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@COrbitAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@COrbitAspectFilter@@8 DD FLAT:??_R0?AVCOrbitAspectFilter@@@8 ; COrbitAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3COrbitAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCOrbitAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCOrbitAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; COrbitAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCOrbitAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CAnalogueBlankingFilter@@6B@
CONST	SEGMENT
??_7CAnalogueBlankingFilter@@6B@ DD FLAT:??_R4CAnalogueBlankingFilter@@6B@ ; CAnalogueBlankingFilter::`vftable'
	DD	FLAT:??_ECAnalogueBlankingFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@CAnalogueBlankingFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@CAnalogueBlankingFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@CAnalogueBlankingFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CAnalogueBlankingFilter@@6B@
rdata$r	SEGMENT
??_R4CAnalogueBlankingFilter@@6B@ DD 00H		; CAnalogueBlankingFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCAnalogueBlankingFilter@@@8
	DD	FLAT:??_R3CAnalogueBlankingFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CAnalogueBlankingFilter@@8
rdata$r	SEGMENT
??_R3CAnalogueBlankingFilter@@8 DD 00H			; CAnalogueBlankingFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CAnalogueBlankingFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CAnalogueBlankingFilter@@8
rdata$r	SEGMENT
??_R2CAnalogueBlankingFilter@@8 DD FLAT:??_R1A@?0A@EA@CAnalogueBlankingFilter@@8 ; CAnalogueBlankingFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CAnalogueBlankingFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CAnalogueBlankingFilter@@8 DD FLAT:??_R0?AVCAnalogueBlankingFilter@@@8 ; CAnalogueBlankingFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CAnalogueBlankingFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCAnalogueBlankingFilter@@@8
_DATA	SEGMENT
??_R0?AVCAnalogueBlankingFilter@@@8 DD FLAT:??_7type_info@@6B@ ; CAnalogueBlankingFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCAnalogueBlankingFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7COverscanAspectFilter@@6B@
CONST	SEGMENT
??_7COverscanAspectFilter@@6B@ DD FLAT:??_R4COverscanAspectFilter@@6B@ ; COverscanAspectFilter::`vftable'
	DD	FLAT:??_ECOverscanAspectFilter@@UAEPAXI@Z
	DD	FLAT:?getFilterName@COverscanAspectFilter@@UAEPB_WXZ
	DD	FLAT:?adjustAspect@COverscanAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
	DD	FLAT:?DebugDump@COverscanAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4COverscanAspectFilter@@6B@
rdata$r	SEGMENT
??_R4COverscanAspectFilter@@6B@ DD 00H			; COverscanAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCOverscanAspectFilter@@@8
	DD	FLAT:??_R3COverscanAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3COverscanAspectFilter@@8
rdata$r	SEGMENT
??_R3COverscanAspectFilter@@8 DD 00H			; COverscanAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2COverscanAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2COverscanAspectFilter@@8
rdata$r	SEGMENT
??_R2COverscanAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@COverscanAspectFilter@@8 ; COverscanAspectFilter::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@COverscanAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@COverscanAspectFilter@@8 DD FLAT:??_R0?AVCOverscanAspectFilter@@@8 ; COverscanAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3COverscanAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCOverscanAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCOverscanAspectFilter@@@8 DD FLAT:??_7type_info@@6B@ ; COverscanAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCOverscanAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT ??_7CAspectFilter@@6B@
CONST	SEGMENT
??_7CAspectFilter@@6B@ DD FLAT:??_R4CAspectFilter@@6B@	; CAspectFilter::`vftable'
	DD	FLAT:??_ECAspectFilter@@UAEPAXI@Z
	DD	FLAT:__purecall
	DD	FLAT:__purecall
	DD	FLAT:?DebugDump@CAspectFilter@@UAEXXZ
CONST	ENDS
;	COMDAT ??_R4CAspectFilter@@6B@
rdata$r	SEGMENT
??_R4CAspectFilter@@6B@ DD 00H				; CAspectFilter::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCAspectFilter@@@8
	DD	FLAT:??_R3CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R3CAspectFilter@@8
rdata$r	SEGMENT
??_R3CAspectFilter@@8 DD 00H				; CAspectFilter::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	01H
	DD	FLAT:??_R2CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R2CAspectFilter@@8
rdata$r	SEGMENT
??_R2CAspectFilter@@8 DD FLAT:??_R1A@?0A@EA@CAspectFilter@@8 ; CAspectFilter::`RTTI Base Class Array'
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CAspectFilter@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CAspectFilter@@8 DD FLAT:??_R0?AVCAspectFilter@@@8 ; CAspectFilter::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	00H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CAspectFilter@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCAspectFilter@@@8
_DATA	SEGMENT
??_R0?AVCAspectFilter@@@8 DD FLAT:??_7type_info@@6B@	; CAspectFilter `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCAspectFilter@@', 00H
_DATA	ENDS
;	COMDAT __TI3?AVlength_error@std@@
xdata$x	SEGMENT
__TI3?AVlength_error@std@@ DD 00H
	DD	FLAT:??1length_error@std@@UAE@XZ
	DD	00H
	DD	FLAT:__CTA3?AVlength_error@std@@
xdata$x	ENDS
;	COMDAT __CTA3?AVlength_error@std@@
xdata$x	SEGMENT
__CTA3?AVlength_error@std@@ DD 03H
	DD	FLAT:__CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40
	DD	FLAT:__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40
	DD	FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	ENDS
;	COMDAT __CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x	SEGMENT
__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12 DD 00H
	DD	FLAT:??_R0?AVexception@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	0cH
	DD	FLAT:??0exception@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT ??_R0?AVexception@std@@@8
_DATA	SEGMENT
??_R0?AVexception@std@@@8 DD FLAT:??_7type_info@@6B@	; std::exception `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVexception@std@@', 00H
_DATA	ENDS
;	COMDAT __CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40
xdata$x	SEGMENT
__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z40 DD 00H
	DD	FLAT:??_R0?AVlogic_error@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	028H
	DD	FLAT:??0logic_error@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT ??_R0?AVlogic_error@std@@@8
_DATA	SEGMENT
??_R0?AVlogic_error@std@@@8 DD FLAT:??_7type_info@@6B@	; std::logic_error `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVlogic_error@std@@', 00H
_DATA	ENDS
;	COMDAT __CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40
xdata$x	SEGMENT
__CT??_R0?AVlength_error@std@@@8??0length_error@std@@QAE@ABV01@@Z40 DD 00H
	DD	FLAT:??_R0?AVlength_error@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	028H
	DD	FLAT:??0length_error@std@@QAE@ABV01@@Z
xdata$x	ENDS
;	COMDAT ??_R0?AVlength_error@std@@@8
_DATA	SEGMENT
??_R0?AVlength_error@std@@@8 DD FLAT:??_7type_info@@6B@	; std::length_error `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVlength_error@std@@', 00H
_DATA	ENDS
;	COMDAT ??_C@_0BD@OLBABOEK@vector?$DMT?$DO?5too?5long?$AA@
CONST	SEGMENT
??_C@_0BD@OLBABOEK@vector?$DMT?$DO?5too?5long?$AA@ DB 'vector<T> too long'
	DB	00H						; `string'
CONST	ENDS
;	COMDAT __TI3PAUNullPointerException@@
xdata$x	SEGMENT
__TI3PAUNullPointerException@@ DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__CTA3PAUNullPointerException@@
xdata$x	ENDS
;	COMDAT __CTA3PAUNullPointerException@@
xdata$x	SEGMENT
__CTA3PAUNullPointerException@@ DD 03H
	DD	FLAT:__CT??_R0PAUNullPointerException@@@84
	DD	FLAT:__CT??_R0PAVexception@std@@@84
	DD	FLAT:__CT??_R0PAX@84
xdata$x	ENDS
;	COMDAT __CT??_R0PAX@84
xdata$x	SEGMENT
__CT??_R0PAX@84 DD 01H
	DD	FLAT:??_R0PAX@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	04H
	DD	00H
xdata$x	ENDS
;	COMDAT __CT??_R0PAVexception@std@@@84
xdata$x	SEGMENT
__CT??_R0PAVexception@std@@@84 DD 01H
	DD	FLAT:??_R0PAVexception@std@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	04H
	DD	00H
xdata$x	ENDS
;	COMDAT __CT??_R0PAUNullPointerException@@@84
xdata$x	SEGMENT
__CT??_R0PAUNullPointerException@@@84 DD 01H
	DD	FLAT:??_R0PAUNullPointerException@@@8
	DD	00H
	DD	0ffffffffH
	ORG $+4
	DD	04H
	DD	00H
xdata$x	ENDS
;	COMDAT ??_R0PAX@8
_DATA	SEGMENT
??_R0PAX@8 DD	FLAT:??_7type_info@@6B@			; void * `RTTI Type Descriptor'
	DD	00H
	DB	'.PAX', 00H
_DATA	ENDS
;	COMDAT ??_R0PAVexception@std@@@8
_DATA	SEGMENT
??_R0PAVexception@std@@@8 DD FLAT:??_7type_info@@6B@	; std::exception * `RTTI Type Descriptor'
	DD	00H
	DB	'.PAVexception@std@@', 00H
_DATA	ENDS
;	COMDAT ??_R0PAUNullPointerException@@@8
_DATA	SEGMENT
??_R0PAUNullPointerException@@@8 DD FLAT:??_7type_info@@6B@ ; NullPointerException * `RTTI Type Descriptor'
	DD	00H
	DB	'.PAUNullPointerException@@', 00H
_DATA	ENDS
;	COMDAT ??_C@_1CI@JAIKPIPL@?$AAM?$AAa?$AAs?$AAt?$AAe?$AAr?$AA?5?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?5?$AAC?$AAh?$AAa?$AAi?$AAn?$AA?$AA@
CONST	SEGMENT
??_C@_1CI@JAIKPIPL@?$AAM?$AAa?$AAs?$AAt?$AAe?$AAr?$AA?5?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?5?$AAC?$AAh?$AAa?$AAi?$AAn?$AA?$AA@ DB 'M'
	DB	00H, 'a', 00H, 's', 00H, 't', 00H, 'e', 00H, 'r', 00H, ' ', 00H
	DB	'F', 00H, 'i', 00H, 'l', 00H, 't', 00H, 'e', 00H, 'r', 00H, ' '
	DB	00H, 'C', 00H, 'h', 00H, 'a', 00H, 'i', 00H, 'n', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1DE@BEFKOAOK@?$AAC?$AAR?$AAe?$AAs?$AAi?$AAz?$AAe?$AAW?$AAi?$AAn?$AAd?$AAo?$AAw?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1DE@BEFKOAOK@?$AAC?$AAR?$AAe?$AAs?$AAi?$AAz?$AAe?$AAW?$AAi?$AAn?$AAd?$AAo?$AAw?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'R', 00H, 'e', 00H, 's', 00H, 'i', 00H, 'z', 00H, 'e', 00H
	DB	'W', 00H, 'i', 00H, 'n', 00H, 'd', 00H, 'o', 00H, 'w', 00H, 'A'
	DB	00H, 's', 00H, 'p', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'F', 00H
	DB	'i', 00H, 'l', 00H, 't', 00H, 'e', 00H, 'r', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1DE@JHMGFEDD@?$AAC?$AAS?$AAc?$AAr?$AAe?$AAe?$AAn?$AAS?$AAa?$AAn?$AAi?$AAt?$AAy?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1DE@JHMGFEDD@?$AAC?$AAS?$AAc?$AAr?$AAe?$AAe?$AAn?$AAS?$AAa?$AAn?$AAi?$AAt?$AAy?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'S', 00H, 'c', 00H, 'r', 00H, 'e', 00H, 'e', 00H, 'n', 00H
	DB	'S', 00H, 'a', 00H, 'n', 00H, 'i', 00H, 't', 00H, 'y', 00H, 'A'
	DB	00H, 's', 00H, 'p', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'F', 00H
	DB	'i', 00H, 'l', 00H, 't', 00H, 'e', 00H, 'r', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1HC@NLAOHMCK@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAX?$AAZ@
CONST	SEGMENT
??_C@_1HC@NLAOHMCK@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAX?$AAZ@ DB 'm'
	DB	00H, '_', 00H, 'X', 00H, 'P', 00H, 'o', 00H, 's', 00H, ' ', 00H
	DB	'=', 00H, ' ', 00H, '%', 00H, 'l', 00H, 'f', 00H, ',', 00H, ' '
	DB	00H, 'm', 00H, '_', 00H, 'Y', 00H, 'P', 00H, 'o', 00H, 's', 00H
	DB	' ', 00H, '=', 00H, ' ', 00H, '%', 00H, 'l', 00H, 'f', 00H, ','
	DB	00H, ' ', 00H, 'm', 00H, '_', 00H, 'X', 00H, 'Z', 00H, 'o', 00H
	DB	'o', 00H, 'm', 00H, ' ', 00H, '=', 00H, ' ', 00H, '%', 00H, 'l'
	DB	00H, 'f', 00H, ',', 00H, ' ', 00H, 'm', 00H, '_', 00H, 'Y', 00H
	DB	'Z', 00H, 'o', 00H, 'o', 00H, 'm', 00H, ' ', 00H, '=', 00H, ' '
	DB	00H, '%', 00H, 'l', 00H, 'f', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1DA@OAMGCFIK@?$AAC?$AAP?$AAa?$AAn?$AAA?$AAn?$AAd?$AAZ?$AAo?$AAo?$AAm?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1DA@OAMGCFIK@?$AAC?$AAP?$AAa?$AAn?$AAA?$AAn?$AAd?$AAZ?$AAo?$AAo?$AAm?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'P', 00H, 'a', 00H, 'n', 00H, 'A', 00H, 'n', 00H, 'd', 00H
	DB	'Z', 00H, 'o', 00H, 'o', 00H, 'm', 00H, 'A', 00H, 's', 00H, 'p'
	DB	00H, 'e', 00H, 'c', 00H, 't', 00H, 'F', 00H, 'i', 00H, 'l', 00H
	DB	't', 00H, 'e', 00H, 'r', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1CI@PEPEJNPP@?$AAC?$AAU?$AAn?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1CI@PEPEJNPP@?$AAC?$AAU?$AAn?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'U', 00H, 'n', 00H, 'C', 00H, 'r', 00H, 'o', 00H, 'p', 00H
	DB	'A', 00H, 's', 00H, 'p', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'F'
	DB	00H, 'i', 00H, 'l', 00H, 't', 00H, 'e', 00H, 'r', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1CE@CEMNGKAP@?$AAC?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1CE@CEMNGKAP@?$AAC?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'C', 00H, 'r', 00H, 'o', 00H, 'p', 00H, 'A', 00H, 's', 00H
	DB	'p', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'F', 00H, 'i', 00H, 'l'
	DB	00H, 't', 00H, 'e', 00H, 'r', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1DG@JPMKLLE@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@
CONST	SEGMENT
??_C@_1DG@JPMKLLE@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@ DB 'm'
	DB	00H, '_', 00H, 'X', 00H, 'P', 00H, 'o', 00H, 's', 00H, ' ', 00H
	DB	'=', 00H, ' ', 00H, '%', 00H, 'l', 00H, 'f', 00H, ',', 00H, ' '
	DB	00H, 'm', 00H, '_', 00H, 'Y', 00H, 'P', 00H, 'o', 00H, 's', 00H
	DB	' ', 00H, '=', 00H, ' ', 00H, '%', 00H, 'l', 00H, 'f', 00H, 00H
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_1EC@OAKBJCKB@?$AAC?$AAP?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr@
CONST	SEGMENT
??_C@_1EC@OAKBJCKB@?$AAC?$AAP?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr@ DB 'C'
	DB	00H, 'P', 00H, 'o', 00H, 's', 00H, 'i', 00H, 't', 00H, 'i', 00H
	DB	'o', 00H, 'n', 00H, 'D', 00H, 'e', 00H, 's', 00H, 't', 00H, 'i'
	DB	00H, 'n', 00H, 'a', 00H, 't', 00H, 'i', 00H, 'o', 00H, 'n', 00H
	DB	'A', 00H, 's', 00H, 'p', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'F'
	DB	00H, 'i', 00H, 'l', 00H, 't', 00H, 'e', 00H, 'r', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BO@MFKJFIM@?$AAp?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@
CONST	SEGMENT
??_C@_1BO@MFKJFIM@?$AAp?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@ DB 'p'
	DB	00H, 'o', 00H, 's', 00H, 'i', 00H, 't', 00H, 'i', 00H, 'o', 00H
	DB	'n', 00H, ' ', 00H, '=', 00H, ' ', 00H, '%', 00H, 'l', 00H, 'f'
	DB	00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1DO@GEHFJHFD@?$AAC?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1DO@GEHFJHFD@?$AAC?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'B', 00H, 'o', 00H, 'u', 00H, 'n', 00H, 'c', 00H, 'e', 00H
	DB	'D', 00H, 'e', 00H, 's', 00H, 't', 00H, 'i', 00H, 'n', 00H, 'a'
	DB	00H, 't', 00H, 'i', 00H, 'o', 00H, 'n', 00H, 'A', 00H, 's', 00H
	DB	'p', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'F', 00H, 'i', 00H, 'l'
	DB	00H, 't', 00H, 'e', 00H, 'r', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1FO@JNBGNOJP@?$AAm?$AA_?$AAp?$AAX?$AAO?$AAr?$AAb?$AAi?$AAt?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAr?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAp?$AAY?$AAO?$AAr?$AAb?$AAi@
CONST	SEGMENT
??_C@_1FO@JNBGNOJP@?$AAm?$AA_?$AAp?$AAX?$AAO?$AAr?$AAb?$AAi?$AAt?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAr?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAp?$AAY?$AAO?$AAr?$AAb?$AAi@ DB 'm'
	DB	00H, '_', 00H, 'p', 00H, 'X', 00H, 'O', 00H, 'r', 00H, 'b', 00H
	DB	'i', 00H, 't', 00H, 'B', 00H, 'o', 00H, 'u', 00H, 'n', 00H, 'c'
	DB	00H, 'e', 00H, 'r', 00H, ' ', 00H, '=', 00H, ' ', 00H, '%', 00H
	DB	'l', 00H, 'f', 00H, ',', 00H, ' ', 00H, 'm', 00H, '_', 00H, 'p'
	DB	00H, 'Y', 00H, 'O', 00H, 'r', 00H, 'b', 00H, 'i', 00H, 't', 00H
	DB	'B', 00H, 'o', 00H, 'u', 00H, 'n', 00H, 'c', 00H, 'e', 00H, 'r'
	DB	00H, ' ', 00H, '=', 00H, ' ', 00H, '%', 00H, 'l', 00H, 'f', 00H
	DB	00H, 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_1CG@LAFGMGLO@?$AAC?$AAO?$AAr?$AAb?$AAi?$AAt?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1CG@LAFGMGLO@?$AAC?$AAO?$AAr?$AAb?$AAi?$AAt?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'O', 00H, 'r', 00H, 'b', 00H, 'i', 00H, 't', 00H, 'A', 00H
	DB	's', 00H, 'p', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'F', 00H, 'i'
	DB	00H, 'l', 00H, 't', 00H, 'e', 00H, 'r', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1DK@OGIOAPEI@?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1DK@OGIOAPEI@?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?$AA@ DB 'A'
	DB	00H, 'n', 00H, 'a', 00H, 'l', 00H, 'o', 00H, 'g', 00H, 'u', 00H
	DB	'e', 00H, 'B', 00H, 'l', 00H, 'a', 00H, 'n', 00H, 'k', 00H, 'i'
	DB	00H, 'n', 00H, 'g', 00H, ' ', 00H, '%', 00H, 'd', 00H, ' ', 00H
	DB	'%', 00H, 'd', 00H, ' ', 00H, '%', 00H, 'd', 00H, ' ', 00H, '%'
	DB	00H, 'd', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1DA@NNIJHEEI@?$AAC?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1DA@NNIJHEEI@?$AAC?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'A', 00H, 'n', 00H, 'a', 00H, 'l', 00H, 'o', 00H, 'g', 00H
	DB	'u', 00H, 'e', 00H, 'B', 00H, 'l', 00H, 'a', 00H, 'n', 00H, 'k'
	DB	00H, 'i', 00H, 'n', 00H, 'g', 00H, 'F', 00H, 'i', 00H, 'l', 00H
	DB	't', 00H, 'e', 00H, 'r', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1GE@MPIAGFPN@?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAs?$AA?5?$AA?$CI?$AAT?$AAo?$AAp?$AA?0?$AAB?$AAo?$AAt?$AAt?$AAo?$AAm?$AA?0?$AAL?$AAe?$AAf?$AAt?$AA?0?$AAR?$AAi?$AAg?$AAh?$AAt@
CONST	SEGMENT
??_C@_1GE@MPIAGFPN@?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAs?$AA?5?$AA?$CI?$AAT?$AAo?$AAp?$AA?0?$AAB?$AAo?$AAt?$AAt?$AAo?$AAm?$AA?0?$AAL?$AAe?$AAf?$AAt?$AA?0?$AAR?$AAi?$AAg?$AAh?$AAt@ DB 'O'
	DB	00H, 'v', 00H, 'e', 00H, 'r', 00H, 's', 00H, 'c', 00H, 'a', 00H
	DB	'n', 00H, 's', 00H, ' ', 00H, '(', 00H, 'T', 00H, 'o', 00H, 'p'
	DB	00H, ',', 00H, 'B', 00H, 'o', 00H, 't', 00H, 't', 00H, 'o', 00H
	DB	'm', 00H, ',', 00H, 'L', 00H, 'e', 00H, 'f', 00H, 't', 00H, ','
	DB	00H, 'R', 00H, 'i', 00H, 'g', 00H, 'h', 00H, 't', 00H, ')', 00H
	DB	' ', 00H, '=', 00H, ' ', 00H, '(', 00H, '%', 00H, 'd', 00H, ','
	DB	00H, '%', 00H, 'd', 00H, ',', 00H, '%', 00H, 'd', 00H, ',', 00H
	DB	'%', 00H, 'd', 00H, ')', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1CM@MLEDNLNE@?$AAC?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1CM@MLEDNLNE@?$AAC?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@ DB 'C'
	DB	00H, 'O', 00H, 'v', 00H, 'e', 00H, 'r', 00H, 's', 00H, 'c', 00H
	DB	'a', 00H, 'n', 00H, 'A', 00H, 's', 00H, 'p', 00H, 'e', 00H, 'c'
	DB	00H, 't', 00H, 'F', 00H, 'i', 00H, 'l', 00H, 't', 00H, 'e', 00H
	DB	'r', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_19CECMBOHG@?$AAD?$AAE?$AAS?$AAT?$AA?$AA@
CONST	SEGMENT
??_C@_19CECMBOHG@?$AAD?$AAE?$AAS?$AAT?$AA?$AA@ DB 'D', 00H, 'E', 00H, 'S', 00H
	DB	'T', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_19HAKLIJIF@?$AAS?$AAR?$AAC?$AA?5?$AA?$AA@
CONST	SEGMENT
??_C@_19HAKLIJIF@?$AAS?$AAR?$AAC?$AA?5?$AA?$AA@ DB 'S', 00H, 'R', 00H, 'C'
	DB	00H, ' ', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1IC@PKOADFGL@?$AA?$CF?$AAs?$AA?3?$AA?5?$AAL?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAR?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAT?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAB?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5@
CONST	SEGMENT
??_C@_1IC@PKOADFGL@?$AA?$CF?$AAs?$AA?3?$AA?5?$AAL?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAR?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAT?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAB?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5@ DB '%'
	DB	00H, 's', 00H, ':', 00H, ' ', 00H, 'L', 00H, ':', 00H, '%', 00H
	DB	'0', 00H, '4', 00H, 'i', 00H, ' ', 00H, 'R', 00H, ':', 00H, '%'
	DB	00H, '0', 00H, '4', 00H, 'i', 00H, ' ', 00H, 'T', 00H, ':', 00H
	DB	'%', 00H, '0', 00H, '4', 00H, 'i', 00H, ' ', 00H, 'B', 00H, ':'
	DB	00H, '%', 00H, '0', 00H, '4', 00H, 'i', 00H, ' ', 00H, '[', 00H
	DB	'S', 00H, 'A', 00H, ':', 00H, ' ', 00H, '%', 00H, '.', 00H, '4'
	DB	00H, 'l', 00H, 'f', 00H, ' ', 00H, 'T', 00H, 'A', 00H, ':', 00H
	DB	' ', 00H, '%', 00H, '.', 00H, '4', 00H, 'l', 00H, 'f', 00H, ' '
	DB	00H, 'A', 00H, 'd', 00H, 'j', 00H, ':', 00H, '%', 00H, '.', 00H
	DB	'4', 00H, 'l', 00H, 'f', 00H, ']', 00H, 0aH, 00H, 00H, 00H ; `string'
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h
;	COMDAT ?abs@@YAJJ@Z
_TEXT	SEGMENT
__X$ = 8						; size = 4
?abs@@YAJJ@Z PROC					; abs, COMDAT

; 486  :         {return (labs(_X)); }

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	8b 45 08	 mov	 eax, DWORD PTR __X$[ebp]
  00006	50		 push	 eax
  00007	e8 00 00 00 00	 call	 _labs
  0000c	83 c4 04	 add	 esp, 4
  0000f	5d		 pop	 ebp
  00010	c3		 ret	 0
?abs@@YAJJ@Z ENDP					; abs
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\time.inl
_TEXT	ENDS
;	COMDAT _time
_TEXT	SEGMENT
__Time$ = 8						; size = 4
_time	PROC						; COMDAT

; 134  : {

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

; 135  :     return _time64(_Time);

  00003	8b 45 08	 mov	 eax, DWORD PTR __Time$[ebp]
  00006	50		 push	 eax
  00007	e8 00 00 00 00	 call	 __time64
  0000c	83 c4 04	 add	 esp, 4

; 136  : }

  0000f	5d		 pop	 ebp
  00010	c3		 ret	 0
_time	ENDP
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ??0Counter@@QAE@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_c$ = 8							; size = 4
??0Counter@@QAE@I@Z PROC				; Counter::Counter, COMDAT
; _this$ = ecx

; 61   :     Counter(unsigned c = 1) : count(c) {}

  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 4d 08	 mov	 ecx, DWORD PTR _c$[ebp]
  0000d	89 08		 mov	 DWORD PTR [eax], ecx
  0000f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c2 04 00	 ret	 4
??0Counter@@QAE@I@Z ENDP				; Counter::Counter
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0NullPointerException@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0NullPointerException@@QAE@XZ$0
__ehfuncinfo$??0NullPointerException@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0NullPointerException@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0NullPointerException@@QAE@XZ
_TEXT	SEGMENT
_this$ = -20						; size = 4
$T302018 = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0NullPointerException@@QAE@XZ PROC			; NullPointerException::NullPointerException, COMDAT
; _this$ = ecx

; 56   :     NullPointerException(): std::exception("[SmartPtr Exception] Attempted to use NULL pointer") {}

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0NullPointerException@@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	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR $T302018[ebp], OFFSET ??_C@_0DD@JDNKHFEP@?$FLSmartPtr?5Exception?$FN?5Attempted?5t@
  0002f	8d 45 f0	 lea	 eax, DWORD PTR $T302018[ebp]
  00032	50		 push	 eax
  00033	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00036	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABQBD@Z ; std::exception::exception
  0003b	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00042	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00045	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], OFFSET ??_7NullPointerException@@6B@
  0004b	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00052	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  00055	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00058	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0005f	59		 pop	 ecx
  00060	8b e5		 mov	 esp, ebp
  00062	5d		 pop	 ebp
  00063	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0NullPointerException@@QAE@XZ$0:
  00000	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__ehhandler$??0NullPointerException@@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$??0NullPointerException@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0NullPointerException@@QAE@XZ ENDP			; NullPointerException::NullPointerException
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1NullPointerException@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1NullPointerException@@UAE@XZ$0
__ehfuncinfo$??1NullPointerException@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1NullPointerException@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1NullPointerException@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1NullPointerException@@UAE@XZ PROC			; NullPointerException::~NullPointerException, 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$??1NullPointerException@@UAE@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	 ??1exception@std@@UAE@XZ ; std::exception::~exception
  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$??1NullPointerException@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__ehhandler$??1NullPointerException@@UAE@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$??1NullPointerException@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1NullPointerException@@UAE@XZ ENDP			; NullPointerException::~NullPointerException
; Function compile flags: /Odtp
;	COMDAT ??_GNullPointerException@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GNullPointerException@@UAEPAXI@Z PROC		; NullPointerException::`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	 ??1NullPointerException@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@20
  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@20:
  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
??_GNullPointerException@@UAEPAXI@Z ENDP		; NullPointerException::`scalar deleting destructor'
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??1_Container_base_aux@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??1_Container_base_aux@std@@QAE@XZ PROC			; std::_Container_base_aux::~_Container_base_aux, COMDAT
; _this$ = ecx

; 402  : 		{

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

; 403  : 		// Do nothing: ~_Container_base_aux_alloc_real() previously destroyed the aux object.
; 404  : 		}

  00007	8b e5		 mov	 esp, ebp
  00009	5d		 pop	 ebp
  0000a	c3		 ret	 0
??1_Container_base_aux@std@@QAE@XZ ENDP			; std::_Container_base_aux::~_Container_base_aux
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Has_container@_Iterator_base_aux@std@@QBE_NXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?_Has_container@_Iterator_base_aux@std@@QBE_NXZ PROC	; std::_Iterator_base_aux::_Has_container, COMDAT
; _this$ = ecx

; 467  : 		{	// Accelerate the comparison by not going through the aux 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

; 468  : 		return _Myaux != 0;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	33 c9		 xor	 ecx, ecx
  0000c	83 38 00	 cmp	 DWORD PTR [eax], 0
  0000f	0f 95 c1	 setne	 cl
  00012	8a c1		 mov	 al, cl

; 469  : 		}

  00014	8b e5		 mov	 esp, ebp
  00016	5d		 pop	 ebp
  00017	c3		 ret	 0
?_Has_container@_Iterator_base_aux@std@@QBE_NXZ ENDP	; std::_Iterator_base_aux::_Has_container
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ PROC ; std::_Aux_cont::_Getcont, COMDAT
; _this$ = ecx

; 368  : 		{

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

; 369  : 		return _Mycontainer;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 00		 mov	 eax, DWORD PTR [eax]

; 370  : 		}

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ ENDP ; std::_Aux_cont::_Getcont
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Other$ = 8						; size = 4
?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z PROC ; std::_Iterator_base_aux::_Same_container, COMDAT
; _this$ = ecx

; 462  : 		{	// Accelerate the comparison by not going through the aux 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

; 463  : 		return _Myaux == _Other._Myaux;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d 08	 mov	 ecx, DWORD PTR __Other$[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

; 464  : 		}

  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c2 04 00	 ret	 4
?_Same_container@_Iterator_base_aux@std@@QBE_NABV12@@Z ENDP ; std::_Iterator_base_aux::_Same_container
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ
_TEXT	SEGMENT
tv70 = -8						; size = 4
_this$ = -4						; size = 4
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr, COMDAT
; _this$ = ecx

; 2174 : 		{	// determine current pointer to buffer for nonmutable string

  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

; 2175 : 		return (_BUF_SIZE <= _Myres ? _Bx._Ptr : _Bx._Buf);

  00009	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	83 78 18 10	 cmp	 DWORD PTR [eax+24], 16	; 00000010H
  00010	72 0b		 jb	 SHORT $LN3@Myptr@3
  00012	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00015	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  00018	89 55 f8	 mov	 DWORD PTR tv70[ebp], edx
  0001b	eb 09		 jmp	 SHORT $LN4@Myptr@3
$LN3@Myptr@3:
  0001d	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00020	83 c0 04	 add	 eax, 4
  00023	89 45 f8	 mov	 DWORD PTR tv70[ebp], eax
$LN4@Myptr@3:
  00026	8b 45 f8	 mov	 eax, DWORD PTR tv70[ebp]

; 2176 : 		}

  00029	8b e5		 mov	 esp, ebp
  0002b	5d		 pop	 ebp
  0002c	c3		 ret	 0
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ
_TEXT	SEGMENT
tv70 = -8						; size = 4
_this$ = -4						; size = 4
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr, COMDAT
; _this$ = ecx

; 2169 : 		{	// determine current pointer to buffer for mutable string

  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

; 2170 : 		return (_BUF_SIZE <= _Myres ? _Bx._Ptr : _Bx._Buf);

  00009	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	83 78 18 10	 cmp	 DWORD PTR [eax+24], 16	; 00000010H
  00010	72 0b		 jb	 SHORT $LN3@Myptr@4
  00012	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00015	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  00018	89 55 f8	 mov	 DWORD PTR tv70[ebp], edx
  0001b	eb 09		 jmp	 SHORT $LN4@Myptr@4
$LN3@Myptr@4:
  0001d	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00020	83 c0 04	 add	 eax, 4
  00023	89 45 f8	 mov	 DWORD PTR tv70[ebp], eax
$LN4@Myptr@4:
  00026	8b 45 f8	 mov	 eax, DWORD PTR tv70[ebp]

; 2171 : 		}

  00029	8b e5		 mov	 esp, ebp
  0002b	5d		 pop	 ebp
  0002c	c3		 ret	 0
?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ?assign@?$char_traits@D@std@@SAXAADABD@Z
_TEXT	SEGMENT
__Left$ = 8						; size = 4
__Right$ = 12						; size = 4
?assign@?$char_traits@D@std@@SAXAADABD@Z PROC		; std::char_traits<char>::assign, COMDAT

; 424  : 		{	// assign an element

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

; 425  : 		_Left = _Right;

  00003	8b 45 08	 mov	 eax, DWORD PTR __Left$[ebp]
  00006	8b 4d 0c	 mov	 ecx, DWORD PTR __Right$[ebp]
  00009	8a 11		 mov	 dl, BYTE PTR [ecx]
  0000b	88 10		 mov	 BYTE PTR [eax], dl

; 426  : 		}

  0000d	5d		 pop	 ebp
  0000e	c3		 ret	 0
?assign@?$char_traits@D@std@@SAXAADABD@Z ENDP		; std::char_traits<char>::assign
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ?deallocate@?$allocator@D@std@@QAEXPADI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$allocator@D@std@@QAEXPADI@Z PROC		; std::allocator<char>::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@D@std@@QAEXPADI@Z ENDP		; std::allocator<char>::deallocate
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ
_TEXT	SEGMENT
__Secure$ = -1						; size = 1
??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ PROC ; std::_Char_traits_cat<std::char_traits<char> >, COMDAT

; 575  : 	{

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

; 576  : 		typename _Char_traits_category<_Traits>::_Secure_char_traits _Secure;
; 577  : 		return (_Secure);

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

; 578  : 	}

  00007	8b e5		 mov	 esp, ebp
  00009	5d		 pop	 ebp
  0000a	c3		 ret	 0
??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ ENDP ; std::_Char_traits_cat<std::char_traits<char> >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size_in_bytes$ = 12					; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z PROC	; std::char_traits<char>::_Copy_s, COMDAT

; 462  : 		{	// copy [_First1, _First1 + _Count) to [_First2, ...)

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

; 463  : //		_DEBUG_POINTER(_First1);
; 464  : //		_DEBUG_POINTER(_First2);
; 465  : 		_CRT_SECURE_MEMCPY(_First1, _Size_in_bytes, _First2, _Count);

  00003	8b 45 14	 mov	 eax, DWORD PTR __Count$[ebp]
  00006	50		 push	 eax
  00007	8b 4d 10	 mov	 ecx, DWORD PTR __First2$[ebp]
  0000a	51		 push	 ecx
  0000b	8b 55 0c	 mov	 edx, DWORD PTR __Size_in_bytes$[ebp]
  0000e	52		 push	 edx
  0000f	8b 45 08	 mov	 eax, DWORD PTR __First1$[ebp]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 _memcpy_s
  00018	83 c4 10	 add	 esp, 16			; 00000010H

; 466  : 		return _First1;

  0001b	8b 45 08	 mov	 eax, DWORD PTR __First1$[ebp]

; 467  : 		}

  0001e	5d		 pop	 ebp
  0001f	c3		 ret	 0
?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z ENDP	; std::char_traits<char>::_Copy_s
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0bad_alloc@std@@QAE@ABV01@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0bad_alloc@std@@QAE@ABV01@@Z$0
__ehfuncinfo$??0bad_alloc@std@@QAE@ABV01@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0bad_alloc@std@@QAE@ABV01@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0bad_alloc@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
___that$ = 8						; size = 4
??0bad_alloc@std@@QAE@ABV01@@Z PROC			; std::bad_alloc::bad_alloc, 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$??0bad_alloc@std@@QAE@ABV01@@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 45 08	 mov	 eax, DWORD PTR ___that$[ebp]
  00029	50		 push	 eax
  0002a	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABV01@@Z ; std::exception::exception
  00032	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00039	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], OFFSET ??_7bad_alloc@std@@6B@
  00042	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00049	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0004c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00056	59		 pop	 ecx
  00057	8b e5		 mov	 esp, ebp
  00059	5d		 pop	 ebp
  0005a	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0bad_alloc@std@@QAE@ABV01@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__ehhandler$??0bad_alloc@std@@QAE@ABV01@@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$??0bad_alloc@std@@QAE@ABV01@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0bad_alloc@std@@QAE@ABV01@@Z ENDP			; std::bad_alloc::bad_alloc
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\exception
xdata$x	SEGMENT
__unwindtable$??1bad_alloc@std@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1bad_alloc@std@@UAE@XZ$0
__ehfuncinfo$??1bad_alloc@std@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1bad_alloc@std@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1bad_alloc@std@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1bad_alloc@std@@UAE@XZ PROC				; std::bad_alloc::~bad_alloc, COMDAT
; _this$ = ecx

; 380  : 		{	// 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$??1bad_alloc@std@@UAE@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	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00029	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7bad_alloc@std@@6B@
  0002f	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 381  : 		}

  00036	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0003d	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00040	e8 00 00 00 00	 call	 ??1exception@std@@UAE@XZ ; std::exception::~exception
  00045	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00048	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0004f	59		 pop	 ecx
  00050	8b e5		 mov	 esp, ebp
  00052	5d		 pop	 ebp
  00053	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1bad_alloc@std@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__ehhandler$??1bad_alloc@std@@UAE@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$??1bad_alloc@std@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1bad_alloc@std@@UAE@XZ ENDP				; std::bad_alloc::~bad_alloc
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0bad_alloc@std@@QAE@PBD@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0bad_alloc@std@@QAE@PBD@Z$0
__ehfuncinfo$??0bad_alloc@std@@QAE@PBD@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0bad_alloc@std@@QAE@PBD@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0bad_alloc@std@@QAE@PBD@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Message$ = 8						; size = 4
??0bad_alloc@std@@QAE@PBD@Z PROC			; std::bad_alloc::bad_alloc, COMDAT
; _this$ = ecx

; 371  : 		{	// construct from message string

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0bad_alloc@std@@QAE@PBD@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	8d 45 08	 lea	 eax, DWORD PTR __Message$[ebp]
  00029	50		 push	 eax
  0002a	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABQBD@Z ; std::exception::exception
  00032	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00039	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], OFFSET ??_7bad_alloc@std@@6B@

; 372  : 		}

  00042	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00049	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0004c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00056	59		 pop	 ecx
  00057	8b e5		 mov	 esp, ebp
  00059	5d		 pop	 ebp
  0005a	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0bad_alloc@std@@QAE@PBD@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__ehhandler$??0bad_alloc@std@@QAE@PBD@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$??0bad_alloc@std@@QAE@PBD@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0bad_alloc@std@@QAE@PBD@Z ENDP			; std::bad_alloc::bad_alloc
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
;	COMDAT ?max_size@?$allocator@D@std@@QBEIXZ
_TEXT	SEGMENT
tv65 = -12						; size = 4
_this$ = -8						; size = 4
__Count$ = -4						; size = 4
?max_size@?$allocator@D@std@@QBEIXZ PROC		; std::allocator<char>::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 ff		 mov	 DWORD PTR __Count$[ebp], -1

; 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@50
  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@50
$LN3@max_size@50:
  0001e	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR tv65[ebp], 1
$LN4@max_size@50:
  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@D@std@@QBEIXZ ENDP		; std::allocator<char>::max_size
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size_in_bytes$ = 12					; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z PROC	; std::char_traits<char>::_Move_s, COMDAT

; 486  : 		{	// move [_First1, _First1 + _Count) to [_First2, ...)

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

; 487  : //		_DEBUG_POINTER(_First1);
; 488  : //		_DEBUG_POINTER(_First2);
; 489  : 		_CRT_SECURE_MEMMOVE(_First1, _Size_in_bytes, _First2, _Count);

  00003	8b 45 14	 mov	 eax, DWORD PTR __Count$[ebp]
  00006	50		 push	 eax
  00007	8b 4d 10	 mov	 ecx, DWORD PTR __First2$[ebp]
  0000a	51		 push	 ecx
  0000b	8b 55 0c	 mov	 edx, DWORD PTR __Size_in_bytes$[ebp]
  0000e	52		 push	 edx
  0000f	8b 45 08	 mov	 eax, DWORD PTR __First1$[ebp]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 _memmove_s
  00018	83 c4 10	 add	 esp, 16			; 00000010H

; 490  : 		return _First1;

  0001b	8b 45 08	 mov	 eax, DWORD PTR __First1$[ebp]

; 491  : 		}

  0001e	5d		 pop	 ebp
  0001f	c3		 ret	 0
?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z ENDP	; std::char_traits<char>::_Move_s
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size, COMDAT
; _this$ = ecx

; 1665 : 		{	// 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

; 1666 : 		return (_Mysize);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 40 14	 mov	 eax, DWORD PTR [eax+20]

; 1667 : 		}

  0000d	8b e5		 mov	 esp, ebp
  0000f	5d		 pop	 ebp
  00010	c3		 ret	 0
?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??0?$allocator@D@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___formal$ = 8						; size = 4
??0?$allocator@D@std@@QAE@ABV01@@Z PROC			; std::allocator<char>::allocator<char>, 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@D@std@@QAE@ABV01@@Z ENDP			; std::allocator<char>::allocator<char>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ?length@?$char_traits@D@std@@SAIPBD@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
?length@?$char_traits@D@std@@SAIPBD@Z PROC		; std::char_traits<char>::length, COMDAT

; 447  : 		{	// find length of null-terminated string

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

; 448  : //		_DEBUG_POINTER(_First);
; 449  : 		return (::strlen(_First));

  00003	8b 45 08	 mov	 eax, DWORD PTR __First$[ebp]
  00006	50		 push	 eax
  00007	e8 00 00 00 00	 call	 _strlen
  0000c	83 c4 04	 add	 esp, 4

; 450  : 		}

  0000f	5d		 pop	 ebp
  00010	c3		 ret	 0
?length@?$char_traits@D@std@@SAIPBD@Z ENDP		; std::char_traits<char>::length
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Inside, COMDAT
; _this$ = ecx

; 2133 : 		{	// test if _Ptr points inside string

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

; 2134 : 		if (_Ptr == 0 || _Ptr < _Myptr() || _Myptr() + _Mysize <= _Ptr)

  00007	83 7d 08 00	 cmp	 DWORD PTR __Ptr$[ebp], 0
  0000b	74 20		 je	 SHORT $LN2@Inside@2
  0000d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00010	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00015	39 45 08	 cmp	 DWORD PTR __Ptr$[ebp], eax
  00018	72 13		 jb	 SHORT $LN2@Inside@2
  0001a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001d	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00022	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00025	03 41 14	 add	 eax, DWORD PTR [ecx+20]
  00028	3b 45 08	 cmp	 eax, DWORD PTR __Ptr$[ebp]
  0002b	77 06		 ja	 SHORT $LN3@Inside@2
$LN2@Inside@2:

; 2135 : 			return (false);	// don't ask

  0002d	32 c0		 xor	 al, al
  0002f	eb 04		 jmp	 SHORT $LN4@Inside@2

; 2136 : 		else

  00031	eb 02		 jmp	 SHORT $LN4@Inside@2
$LN3@Inside@2:

; 2137 : 			return (true);

  00033	b0 01		 mov	 al, 1
$LN4@Inside@2:

; 2138 : 		}

  00035	8b e5		 mov	 esp, ebp
  00037	5d		 pop	 ebp
  00038	c2 04 00	 ret	 4
?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Inside
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??0?$allocator@D@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0?$allocator@D@std@@QAE@XZ PROC			; std::allocator<char>::allocator<char>, 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@D@std@@QAE@XZ ENDP			; std::allocator<char>::allocator<char>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Al$ = 8						; size = 1
??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z PROC ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >, COMDAT
; _this$ = ecx

; 472  : 		{	// construct allocator from _Al

  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	8d 45 08	 lea	 eax, DWORD PTR __Al$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ??0?$allocator@D@std@@QAE@ABV01@@Z ; std::allocator<char>::allocator<char>

; 473  : 		}

  00013	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c2 04 00	 ret	 4
??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z ENDP ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??0_Container_base_aux@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0_Container_base_aux@std@@QAE@XZ PROC			; std::_Container_base_aux::_Container_base_aux, COMDAT
; _this$ = ecx

; 379  : 	_Container_base_aux()

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

; 380  : 		{
; 381  : 		// Do nothing: _Container_base_aux_alloc_real() will construct the aux object.
; 382  : 		}

  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_Container_base_aux@std@@QAE@XZ ENDP			; std::_Container_base_aux::_Container_base_aux
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\new
_TEXT	ENDS
;	COMDAT ??2@YAPAXIPAX@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
__Where$ = 12						; size = 4
??2@YAPAXIPAX@Z PROC					; operator new, COMDAT

; 58   : 	{	// construct array with placement at _Where

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

; 59   : 	return (_Where);

  00003	8b 45 0c	 mov	 eax, DWORD PTR __Where$[ebp]

; 60   : 	}

  00006	5d		 pop	 ebp
  00007	c3		 ret	 0
??2@YAPAXIPAX@Z ENDP					; operator new
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??3@YAXPAX0@Z
_TEXT	SEGMENT
___formal$ = 8						; size = 4
___formal$ = 12						; size = 4
??3@YAXPAX0@Z PROC					; operator delete, COMDAT

; 63   : 	{	// delete if placement new fails

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

; 64   : 	}

  00003	5d		 pop	 ebp
  00004	c3		 ret	 0
??3@YAXPAX0@Z ENDP					; operator delete
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
_TEXT	ENDS
;	COMDAT ??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Pcont$ = 8						; size = 4
??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z PROC	; std::_Aux_cont::_Aux_cont, COMDAT
; _this$ = ecx

; 364  : 	explicit _Aux_cont(const _Container_base_aux * const _Pcont)

  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 4d 08	 mov	 ecx, DWORD PTR __Pcont$[ebp]
  0000d	89 08		 mov	 DWORD PTR [eax], ecx
  0000f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c2 04 00	 ret	 4
??0_Aux_cont@std@@QAE@QBV_Container_base_aux@1@@Z ENDP	; std::_Aux_cont::_Aux_cont
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Pcont$ = 8						; size = 4
?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z PROC ; std::_Iterator_base_aux::_Set_container, COMDAT
; _this$ = ecx

; 452  : 		{

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

; 453  : 		_Myaux = _Pcont->_Myownedaux;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d 08	 mov	 ecx, DWORD PTR __Pcont$[ebp]
  0000d	8b 11		 mov	 edx, DWORD PTR [ecx]
  0000f	89 10		 mov	 DWORD PTR [eax], edx

; 454  : 		}

  00011	8b e5		 mov	 esp, ebp
  00013	5d		 pop	 ebp
  00014	c2 04 00	 ret	 4
?_Set_container@_Iterator_base_aux@std@@QAEXQBV_Container_base_aux@2@@Z ENDP ; std::_Iterator_base_aux::_Set_container
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0_Iterator_base_aux@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0_Iterator_base_aux@std@@QAE@XZ PROC			; std::_Iterator_base_aux::_Iterator_base_aux, COMDAT
; _this$ = ecx

; 448  : 	_Iterator_base_aux()

  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	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00010	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00013	8b e5		 mov	 esp, ebp
  00015	5d		 pop	 ebp
  00016	c3		 ret	 0
??0_Iterator_base_aux@std@@QAE@XZ ENDP			; std::_Iterator_base_aux::_Iterator_base_aux
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Checked_base@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z
_TEXT	SEGMENT
__It$ = 8						; size = 4
___formal$ = 12						; size = 1
??$_Checked_base@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z PROC ; std::_Checked_base<SmartPtr<CAspectFilter> *>, 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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z ENDP ; std::_Checked_base<SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Move_cat@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@@Z
_TEXT	SEGMENT
__Cat$ = -1						; size = 1
___formal$ = 8						; size = 4
??$_Move_cat@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@@Z PROC ; std::_Move_cat<SmartPtr<CAspectFilter> *>, 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@VCAspectFilter@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@@Z ENDP ; std::_Move_cat<SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Iter_random@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@0@Z
_TEXT	SEGMENT
___$ReturnUdt$ = 8					; size = 4
___formal$ = 12						; size = 4
___formal$ = 16						; size = 4
??$_Iter_random@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@0@Z PROC ; std::_Iter_random<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>, 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@VCAspectFilter@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@0@Z ENDP ; std::_Iter_random<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Checked_base@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z
_TEXT	SEGMENT
__Base_tag$ = -1					; size = 1
__It$ = 8						; size = 4
??$_Checked_base@PAV?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z PROC ; std::_Checked_base<SmartPtr<CAspectFilter> *>, 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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@U_Unchanged_checked_iterator_base_type_tag@0@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ENDP ; std::_Checked_base<SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Ptr_cat@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z
_TEXT	SEGMENT
__Cat$ = -1						; size = 1
___formal$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Ptr_cat@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z PROC ; std::_Ptr_cat<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>, 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@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z ENDP ; std::_Ptr_cat<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z
_TEXT	SEGMENT
$T302130 = -12						; size = 12
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z PROC ; std::_Allocate<std::_Aux_cont>, 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

; 38   : 		_Count = 0;

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

; 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 04	 cmp	 eax, 4
  00020	73 18		 jae	 SHORT $LN2@Allocate

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

  00022	6a 00		 push	 0
  00024	8d 4d f4	 lea	 ecx, DWORD PTR $T302130[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 $T302130[ebp]
  00034	50		 push	 eax
  00035	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN2@Allocate:

; 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 02	 shl	 ecx, 2
  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:

; 44   : 	}

  00049	8b e5		 mov	 esp, ebp
  0004b	5d		 pop	 ebp
  0004c	c3		 ret	 0
??$_Allocate@V_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z ENDP ; std::_Allocate<std::_Aux_cont>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Allocate@V?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@IPAV1@@Z
_TEXT	SEGMENT
$T302133 = -12						; size = 12
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@V?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@IPAV1@@Z PROC ; std::_Allocate<SmartPtr<CAspectFilter> >, 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@2

; 38   : 		_Count = 0;

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

; 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@2

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

  00022	6a 00		 push	 0
  00024	8d 4d f4	 lea	 ecx, DWORD PTR $T302133[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 $T302133[ebp]
  00034	50		 push	 eax
  00035	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN2@Allocate@2:

; 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@2:

; 44   : 	}

  00049	8b e5		 mov	 esp, ebp
  0004b	5d		 pop	 ebp
  0004c	c3		 ret	 0
??$_Allocate@V?$SmartPtr@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@IPAV1@@Z ENDP ; std::_Allocate<SmartPtr<CAspectFilter> >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$?0V?$SmartPtr@VCAspectFilter@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___formal$ = 8						; size = 4
??$?0V?$SmartPtr@VCAspectFilter@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z PROC ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CAspectFilter> >, 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@VCAspectFilter@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ENDP ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CAspectFilter> >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?max_size@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QBEIXZ
_TEXT	SEGMENT
tv65 = -12						; size = 4
_this$ = -8						; size = 4
__Count$ = -4						; size = 4
?max_size@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QBEIXZ PROC ; std::allocator<SmartPtr<CAspectFilter> >::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@51
  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@51
$LN3@max_size@51:
  0001e	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR tv65[ebp], 1
$LN4@max_size@51:
  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@VCAspectFilter@@@@@std@@QBEIXZ ENDP ; std::allocator<SmartPtr<CAspectFilter> >::max_size
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Count$ = 8						; size = 4
?allocate@?$allocator@V_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z PROC ; std::allocator<std::_Aux_cont>::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_Aux_cont@std@@@std@@YAPAV_Aux_cont@0@IPAV10@@Z ; std::_Allocate<std::_Aux_cont>
  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_Aux_cont@std@@@std@@QAEPAV_Aux_cont@2@I@Z ENDP ; std::allocator<std::_Aux_cont>::allocate
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$_Iterator_with_base@Urandom_access_iterator_tag@std@@V?$SmartPtr@VCAspectFilter@@@@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@VCAspectFilter@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ PROC ; std::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &,std::_Iterator_base_aux>::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> 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@VCAspectFilter@@@@HPBV3@ABV3@V_Iterator_base_aux@2@@std@@QAE@XZ ENDP ; std::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &,std::_Iterator_base_aux>::_Iterator_with_base<std::random_access_iterator_tag,SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &,std::_Iterator_base_aux>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$_Ranit@V?$SmartPtr@VCAspectFilter@@@@HPBV1@ABV1@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0?$_Ranit@V?$SmartPtr@VCAspectFilter@@@@HPBV1@ABV1@@std@@QAE@XZ PROC ; std::_Ranit<SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &>::_Ranit<SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> 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@VCAspectFilter@@@@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@VCAspectFilter@@@@HPBV1@ABV1@@std@@QAE@XZ ENDP ; std::_Ranit<SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &>::_Ranit<SmartPtr<CAspectFilter>,int,SmartPtr<CAspectFilter> const *,SmartPtr<CAspectFilter> const &>
; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEHABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Right$ = 8						; size = 4
??G?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEHABV01@@Z PROC ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@21
  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@21
$LN4@operator@21:
  00029	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@21:
  0002e	33 c0		 xor	 eax, eax
  00030	75 fc		 jne	 SHORT $LN2@operator@21

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEHABV01@@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator-
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z PROC ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@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
  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
  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
$LN4@Vector_con:
  0002b	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@Vector_con:
  00030	33 c9		 xor	 ecx, ecx
  00032	75 fc		 jne	 SHORT $LN2@Vector_con

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ?allocate@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEPAV?$SmartPtr@VCAspectFilter@@@@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Count$ = 8						; size = 4
?allocate@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEPAV?$SmartPtr@VCAspectFilter@@@@I@Z PROC ; std::allocator<SmartPtr<CAspectFilter> >::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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@IPAV1@@Z ; std::_Allocate<SmartPtr<CAspectFilter> >
  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@VCAspectFilter@@@@@std@@QAEPAV?$SmartPtr@VCAspectFilter@@@@I@Z ENDP ; std::allocator<SmartPtr<CAspectFilter> >::allocate
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?deallocate@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@I@Z PROC ; std::allocator<SmartPtr<CAspectFilter> >::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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@I@Z ENDP ; std::allocator<SmartPtr<CAspectFilter> >::deallocate
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___formal$ = 8						; size = 4
??0?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAE@ABV01@@Z PROC ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >, 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@VCAspectFilter@@@@@std@@QAE@ABV01@@Z ENDP ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >
_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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z$1
__ehfuncinfo$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z
_TEXT	SEGMENT
tv133 = -32						; size = 4
_this$ = -28						; size = 4
$T302160 = -24						; size = 4
$T302159 = -20						; size = 4
$T302158 = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Al$ = 8						; size = 1
??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z PROC ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@?$allocator@V_Aux_cont@std@@@std@@QAE@ABV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ; std::allocator<std::_Aux_cont>::allocator<std::_Aux_cont><SmartPtr<CAspectFilter> >

; 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 $T302160[ebp], eax
  00056	8b 4d e8	 mov	 ecx, DWORD PTR $T302160[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 $T302159[ebp], eax
  00067	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0006b	83 7d ec 00	 cmp	 DWORD PTR $T302159[ebp], 0
  0006f	74 11		 je	 SHORT $LN3@Container_
  00071	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  00074	52		 push	 edx
  00075	8b 4d ec	 mov	 ecx, DWORD PTR $T302159[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_
$LN3@Container_:
  00082	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR tv133[ebp], 0
$LN4@Container_:
  00089	8b 45 e0	 mov	 eax, DWORD PTR tv133[ebp]
  0008c	89 45 f0	 mov	 DWORD PTR $T302158[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 $T302158[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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z$1:
  00008	8b 45 e8	 mov	 eax, DWORD PTR $T302160[ebp]
  0000b	50		 push	 eax
  0000c	8b 4d ec	 mov	 ecx, DWORD PTR $T302159[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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z
  0002f	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ENDP ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
;	COMDAT ?max_size@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?max_size@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@@std@@QBEIXZ ; std::allocator<SmartPtr<CAspectFilter> >::max_size

; 732  : 		}

  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
?max_size@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::max_size
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
___formal$ = 12						; size = 4
?deallocate@?$allocator@V_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z PROC ; std::allocator<std::_Aux_cont>::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_Aux_cont@std@@@std@@QAEXPAV_Aux_cont@2@I@Z ENDP ; std::allocator<std::_Aux_cont>::deallocate
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ??8?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Right$ = 8						; size = 4
??8?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z PROC ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator==, COMDAT
; _this$ = ecx

; 203  : 		{	// test for iterator equality

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

; 204  : 
; 205  :  #if _HAS_ITERATOR_DEBUGGING
; 206  : 		_Compat(_Right);
; 207  :  #else
; 208  : 		_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@22
  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@22
$LN4@operator@22:
  00029	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@22:
  0002e	33 c0		 xor	 eax, eax
  00030	75 fc		 jne	 SHORT $LN2@operator@22

; 209  :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 210  : 
; 211  : 		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	33 c9		 xor	 ecx, ecx
  0003d	3b 42 04	 cmp	 eax, DWORD PTR [edx+4]
  00040	0f 94 c1	 sete	 cl
  00043	8a c1		 mov	 al, cl

; 212  : 		}

  00045	8b e5		 mov	 esp, ebp
  00047	5d		 pop	 ebp
  00048	c2 04 00	 ret	 4
??8?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator==
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z PROC ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z ENDP ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??0?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAE@XZ PROC ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >, 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@VCAspectFilter@@@@@std@@QAE@XZ ENDP ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >
_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@VCAspectFilter@@@@@std@@@std@@IAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@XZ$0
__ehfuncinfo$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$_Container_base_aux_alloc_real@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@XZ PROC ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@@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@VCAspectFilter@@@@@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@VCAspectFilter@@@@@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@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@XZ ENDP ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
;	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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z$0
__ehfuncinfo$??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z
_TEXT	SEGMENT
_this$ = -20						; size = 4
$T302192 = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Al$ = 8						; size = 1
??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z PROC ; std::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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 $T302192[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@VCAspectFilter@@@@@std@@QAE@ABV01@@Z ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >
  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@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@@std@@QAE@ABV01@@Z ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
__ehhandler$??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ENDP ; std::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
;	COMDAT ?size@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?size@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::size
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?capacity@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ
_TEXT	SEGMENT
tv70 = -8						; size = 4
_this$ = -4						; size = 4
?capacity@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@45
  00012	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR tv70[ebp], 0
  00019	eb 12		 jmp	 SHORT $LN4@capacity@45
$LN3@capacity@45:
  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@45:
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::capacity
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ?acquire@?$SmartPtr@VCPeriodBouncer@@@@AAEXPAUCounter@@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_c$ = 8							; size = 4
?acquire@?$SmartPtr@VCPeriodBouncer@@@@AAEXPAUCounter@@@Z PROC ; SmartPtr<CPeriodBouncer>::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@242

; 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@242:

; 267  :         }
; 268  :     }

  00023	8b e5		 mov	 esp, ebp
  00025	5d		 pop	 ebp
  00026	c2 04 00	 ret	 4
?acquire@?$SmartPtr@VCPeriodBouncer@@@@AAEXPAUCounter@@@Z ENDP ; SmartPtr<CPeriodBouncer>::acquire
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?Clear@?$SmartPtr@VCPeriodBouncer@@@@QAEXXZ
_TEXT	SEGMENT
_this$ = -12						; size = 4
$T302211 = -8						; size = 4
$T302210 = -4						; size = 4
?Clear@?$SmartPtr@VCPeriodBouncer@@@@QAEXXZ PROC	; SmartPtr<CPeriodBouncer>::Clear, COMDAT
; _this$ = ecx

; 240  :     {

  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

; 241  :         if (counter)

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

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

  00012	8b 4d f4	 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 f4	 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 f4	 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 29		 jne	 SHORT $LN2@Clear@238

; 246  :             {
; 247  :                 delete counter;

  00030	8b 55 f4	 mov	 edx, DWORD PTR _this$[ebp]
  00033	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  00036	89 45 fc	 mov	 DWORD PTR $T302210[ebp], eax
  00039	8b 4d fc	 mov	 ecx, DWORD PTR $T302210[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 f4	 mov	 edx, DWORD PTR _this$[ebp]
  00048	8b 02		 mov	 eax, DWORD PTR [edx]
  0004a	89 45 f8	 mov	 DWORD PTR $T302211[ebp], eax
  0004d	8b 4d f8	 mov	 ecx, DWORD PTR $T302211[ebp]
  00050	51		 push	 ecx
  00051	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00056	83 c4 04	 add	 esp, 4
$LN2@Clear@238:

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

  00059	8b 55 f4	 mov	 edx, DWORD PTR _this$[ebp]
  0005c	c7 42 04 00 00
	00 00		 mov	 DWORD PTR [edx+4], 0

; 252  :         rawPtr = 0;

  00063	8b 45 f4	 mov	 eax, DWORD PTR _this$[ebp]
  00066	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0

; 253  :     }

  0006c	8b e5		 mov	 esp, ebp
  0006e	5d		 pop	 ebp
  0006f	c3		 ret	 0
?Clear@?$SmartPtr@VCPeriodBouncer@@@@QAEXXZ ENDP	; SmartPtr<CPeriodBouncer>::Clear
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ$0
__ehfuncinfo$?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ
_TEXT	SEGMENT
tv72 = -32						; size = 4
_this$ = -28						; size = 4
$T302216 = -24						; size = 4
$T302215 = -20						; size = 4
$T302214 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ PROC ; SmartPtr<CPeriodBouncer>::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@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@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
  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 $T302216[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 $T302216[ebp], 0
  00048	74 0d		 je	 SHORT $LN4@GetRawPoin
  0004a	8b 4d e8	 mov	 ecx, DWORD PTR $T302216[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
$LN4@GetRawPoin:
  00057	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR tv72[ebp], 0
$LN5@GetRawPoin:
  0005e	8b 4d e0	 mov	 ecx, DWORD PTR tv72[ebp]
  00061	89 4d ec	 mov	 DWORD PTR $T302215[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 $T302215[ebp]
  0006e	89 55 f0	 mov	 DWORD PTR $T302214[ebp], edx
  00071	68 00 00 00 00	 push	 OFFSET __TI3PAUNullPointerException@@
  00076	8d 45 f0	 lea	 eax, DWORD PTR $T302214[ebp]
  00079	50		 push	 eax
  0007a	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN1@GetRawPoin:

; 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:

; 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@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ$0:
  00000	8b 45 e8	 mov	 eax, DWORD PTR $T302216[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@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@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@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?GetRawPointer@?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ENDP ; SmartPtr<CPeriodBouncer>::GetRawPointer
; Function compile flags: /Odtp
;	COMDAT ?acquire@?$SmartPtr@VCAspectFilter@@@@AAEXPAUCounter@@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_c$ = 8							; size = 4
?acquire@?$SmartPtr@VCAspectFilter@@@@AAEXPAUCounter@@@Z PROC ; SmartPtr<CAspectFilter>::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@243

; 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@243:

; 267  :         }
; 268  :     }

  00023	8b e5		 mov	 esp, ebp
  00025	5d		 pop	 ebp
  00026	c2 04 00	 ret	 4
?acquire@?$SmartPtr@VCAspectFilter@@@@AAEXPAUCounter@@@Z ENDP ; SmartPtr<CAspectFilter>::acquire
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?Clear@?$SmartPtr@VCAspectFilter@@@@QAEXXZ
_TEXT	SEGMENT
tv84 = -20						; size = 4
_this$ = -16						; size = 4
$T302232 = -12						; size = 4
$T302231 = -8						; size = 4
$T302230 = -4						; size = 4
?Clear@?$SmartPtr@VCAspectFilter@@@@QAEXXZ PROC		; SmartPtr<CAspectFilter>::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 61		 je	 SHORT $LN2@Clear@239

; 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 43		 jne	 SHORT $LN2@Clear@239

; 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 $T302230[ebp], eax
  00039	8b 4d fc	 mov	 ecx, DWORD PTR $T302230[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 $T302232[ebp], eax
  0004d	8b 4d f4	 mov	 ecx, DWORD PTR $T302232[ebp]
  00050	89 4d f8	 mov	 DWORD PTR $T302231[ebp], ecx
  00053	83 7d f8 00	 cmp	 DWORD PTR $T302231[ebp], 0
  00057	74 13		 je	 SHORT $LN5@Clear@239
  00059	6a 01		 push	 1
  0005b	8b 55 f8	 mov	 edx, DWORD PTR $T302231[ebp]
  0005e	8b 02		 mov	 eax, DWORD PTR [edx]
  00060	8b 4d f8	 mov	 ecx, DWORD PTR $T302231[ebp]
  00063	8b 10		 mov	 edx, DWORD PTR [eax]
  00065	ff d2		 call	 edx
  00067	89 45 ec	 mov	 DWORD PTR tv84[ebp], eax
  0006a	eb 07		 jmp	 SHORT $LN2@Clear@239
$LN5@Clear@239:
  0006c	c7 45 ec 00 00
	00 00		 mov	 DWORD PTR tv84[ebp], 0
$LN2@Clear@239:

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

  00073	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00076	c7 40 04 00 00
	00 00		 mov	 DWORD PTR [eax+4], 0

; 252  :         rawPtr = 0;

  0007d	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00080	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], 0

; 253  :     }

  00086	8b e5		 mov	 esp, ebp
  00088	5d		 pop	 ebp
  00089	c3		 ret	 0
?Clear@?$SmartPtr@VCAspectFilter@@@@QAEXXZ ENDP		; SmartPtr<CAspectFilter>::Clear
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ$0
__ehfuncinfo$?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ
_TEXT	SEGMENT
tv72 = -32						; size = 4
_this$ = -28						; size = 4
$T302239 = -24						; size = 4
$T302238 = -20						; size = 4
$T302237 = -16						; size = 4
__$EHRec$ = -12						; size = 12
?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ PROC ; SmartPtr<CAspectFilter>::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@VCAspectFilter@@@@QBEPAVCAspectFilter@@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@2
  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 $T302239[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 $T302239[ebp], 0
  00048	74 0d		 je	 SHORT $LN4@GetRawPoin@2
  0004a	8b 4d e8	 mov	 ecx, DWORD PTR $T302239[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@2
$LN4@GetRawPoin@2:
  00057	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR tv72[ebp], 0
$LN5@GetRawPoin@2:
  0005e	8b 4d e0	 mov	 ecx, DWORD PTR tv72[ebp]
  00061	89 4d ec	 mov	 DWORD PTR $T302238[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 $T302238[ebp]
  0006e	89 55 f0	 mov	 DWORD PTR $T302237[ebp], edx
  00071	68 00 00 00 00	 push	 OFFSET __TI3PAUNullPointerException@@
  00076	8d 45 f0	 lea	 eax, DWORD PTR $T302237[ebp]
  00079	50		 push	 eax
  0007a	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN1@GetRawPoin@2:

; 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@2:

; 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@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ$0:
  00000	8b 45 e8	 mov	 eax, DWORD PTR $T302239[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@VCAspectFilter@@@@QBEPAVCAspectFilter@@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@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?GetRawPointer@?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ENDP ; SmartPtr<CAspectFilter>::GetRawPointer
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ$0
__ehfuncinfo$??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ PROC ; std::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@IAE@XZ ; std::_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >::~_Container_base_aux_alloc_real<std::allocator<SmartPtr<CAspectFilter> > >
__ehhandler$??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ENDP ; std::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
;	COMDAT ??9?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Right$ = 8						; size = 4
??9?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z PROC ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator!=, COMDAT
; _this$ = ecx

; 215  : 		{	// test for iterator inequality

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

; 216  : 		return (!(*this == _Right));

  00007	8b 45 08	 mov	 eax, DWORD PTR __Right$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ??8?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator==
  00013	0f b6 c0	 movzx	 eax, al
  00016	f7 d8		 neg	 eax
  00018	1b c0		 sbb	 eax, eax
  0001a	83 c0 01	 add	 eax, 1

; 217  : 		}

  0001d	8b e5		 mov	 esp, ebp
  0001f	5d		 pop	 ebp
  00020	c2 04 00	 ret	 4
??9?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator!=
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?end@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?end@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::end
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?begin@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
?begin@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@PAV?$SmartPtr@VCAspectFilter@@@@PBV_Container_base_aux@1@@Z ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::begin
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\smartptr.h
_TEXT	ENDS
;	COMDAT ??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ PROC ; SmartPtr<CPeriodBouncer>::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@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::GetRawPointer

; 170  :     }

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ENDP ; SmartPtr<CPeriodBouncer>::operator->
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ PROC		; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>, 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@VCPeriodBouncer@@@@QAEXXZ ; SmartPtr<CPeriodBouncer>::Clear

; 107  :     }

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ENDP		; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z$0
__ehfuncinfo$??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z
_TEXT	SEGMENT
tv78 = -28						; size = 4
_this$ = -24						; size = 4
$T302271 = -20						; size = 4
$T302270 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_raw$ = 8						; size = 4
_c$ = 12						; size = 4
??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z PROC ; SmartPtr<CPeriodBouncer>::SmartPtr<CPeriodBouncer>, 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@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@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

; 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
  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@VCPeriodBouncer@@@@AAEXPAUCounter@@@Z ; SmartPtr<CPeriodBouncer>::acquire
  0005b	eb 46		 jmp	 SHORT $LN4@SmartPtr
$LN2@SmartPtr:

; 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 $T302271[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 $T302271[ebp], 0
  00075	74 0f		 je	 SHORT $LN6@SmartPtr
  00077	6a 01		 push	 1
  00079	8b 4d ec	 mov	 ecx, DWORD PTR $T302271[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
$LN6@SmartPtr:
  00086	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv78[ebp], 0
$LN7@SmartPtr:
  0008d	8b 55 e4	 mov	 edx, DWORD PTR tv78[ebp]
  00090	89 55 f0	 mov	 DWORD PTR $T302270[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 $T302270[ebp]
  000a0	89 48 04	 mov	 DWORD PTR [eax+4], ecx
$LN4@SmartPtr:

; 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@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z$0:
  00000	8b 45 ec	 mov	 eax, DWORD PTR $T302271[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@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@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@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z ENDP ; SmartPtr<CPeriodBouncer>::SmartPtr<CPeriodBouncer>
; Function compile flags: /Odtp
;	COMDAT ??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ PROC ; SmartPtr<CAspectFilter>::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@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::GetRawPointer

; 170  :     }

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ENDP ; SmartPtr<CAspectFilter>::operator->
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z$0
__ehfuncinfo$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z
_TEXT	SEGMENT
tv75 = -28						; size = 4
_this$ = -24						; size = 4
$T302286 = -20						; size = 4
$T302285 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_raw$ = 8						; size = 4
??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z PROC ; SmartPtr<CAspectFilter>::operator=, COMDAT
; _this$ = ecx

; 153  :     {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@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

; 154  : 
; 155  :         Clear();

  00028	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  0002b	e8 00 00 00 00	 call	 ?Clear@?$SmartPtr@VCAspectFilter@@@@QAEXXZ ; SmartPtr<CAspectFilter>::Clear

; 156  :         if (raw)

  00030	83 7d 08 00	 cmp	 DWORD PTR _raw$[ebp], 0
  00034	74 4e		 je	 SHORT $LN1@operator@23

; 157  :         {
; 158  :             counter = new Counter;

  00036	6a 04		 push	 4
  00038	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0003d	83 c4 04	 add	 esp, 4
  00040	89 45 ec	 mov	 DWORD PTR $T302286[ebp], eax
  00043	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0004a	83 7d ec 00	 cmp	 DWORD PTR $T302286[ebp], 0
  0004e	74 0f		 je	 SHORT $LN4@operator@23
  00050	6a 01		 push	 1
  00052	8b 4d ec	 mov	 ecx, DWORD PTR $T302286[ebp]
  00055	e8 00 00 00 00	 call	 ??0Counter@@QAE@I@Z	; Counter::Counter
  0005a	89 45 e4	 mov	 DWORD PTR tv75[ebp], eax
  0005d	eb 07		 jmp	 SHORT $LN5@operator@23
$LN4@operator@23:
  0005f	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv75[ebp], 0
$LN5@operator@23:
  00066	8b 45 e4	 mov	 eax, DWORD PTR tv75[ebp]
  00069	89 45 f0	 mov	 DWORD PTR $T302285[ebp], eax
  0006c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00073	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  00076	8b 55 f0	 mov	 edx, DWORD PTR $T302285[ebp]
  00079	89 51 04	 mov	 DWORD PTR [ecx+4], edx

; 159  :             rawPtr = raw;

  0007c	8b 45 e8	 mov	 eax, DWORD PTR _this$[ebp]
  0007f	8b 4d 08	 mov	 ecx, DWORD PTR _raw$[ebp]
  00082	89 08		 mov	 DWORD PTR [eax], ecx
$LN1@operator@23:

; 160  :         }
; 161  :         return *this;

  00084	8b 45 e8	 mov	 eax, DWORD PTR _this$[ebp]

; 162  :     }

  00087	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0008a	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00091	59		 pop	 ecx
  00092	8b e5		 mov	 esp, ebp
  00094	5d		 pop	 ebp
  00095	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z$0:
  00000	8b 45 ec	 mov	 eax, DWORD PTR $T302286[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$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@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$??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z ENDP ; SmartPtr<CAspectFilter>::operator=
; Function compile flags: /Odtp
;	COMDAT ??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@ABV0@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_otherPtr$ = 8						; size = 4
??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@ABV0@@Z PROC	; SmartPtr<CAspectFilter>::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@24

; 113  :         {
; 114  :             Clear();

  0000f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00012	e8 00 00 00 00	 call	 ?Clear@?$SmartPtr@VCAspectFilter@@@@QAEXXZ ; SmartPtr<CAspectFilter>::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@VCAspectFilter@@@@AAEXPAUCounter@@@Z ; SmartPtr<CAspectFilter>::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@24:

; 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@VCAspectFilter@@@@QAEAAV0@ABV0@@Z ENDP	; SmartPtr<CAspectFilter>::operator=
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ PROC		; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>, 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@VCAspectFilter@@@@QAEXXZ ; SmartPtr<CAspectFilter>::Clear

; 107  :     }

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ENDP		; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z$0
__ehfuncinfo$??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z
_TEXT	SEGMENT
tv78 = -28						; size = 4
_this$ = -24						; size = 4
$T302303 = -20						; size = 4
$T302302 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_raw$ = 8						; size = 4
_c$ = 12						; size = 4
??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z PROC ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>, 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@VCAspectFilter@@@@QAE@PAVCAspectFilter@@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@2

; 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@2
  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@VCAspectFilter@@@@AAEXPAUCounter@@@Z ; SmartPtr<CAspectFilter>::acquire
  0005b	eb 46		 jmp	 SHORT $LN4@SmartPtr@2
$LN2@SmartPtr@2:

; 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 $T302303[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 $T302303[ebp], 0
  00075	74 0f		 je	 SHORT $LN6@SmartPtr@2
  00077	6a 01		 push	 1
  00079	8b 4d ec	 mov	 ecx, DWORD PTR $T302303[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@2
$LN6@SmartPtr@2:
  00086	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv78[ebp], 0
$LN7@SmartPtr@2:
  0008d	8b 55 e4	 mov	 edx, DWORD PTR tv78[ebp]
  00090	89 55 f0	 mov	 DWORD PTR $T302302[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 $T302302[ebp]
  000a0	89 48 04	 mov	 DWORD PTR [eax+4], ecx
$LN4@SmartPtr@2:

; 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@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z$0:
  00000	8b 45 ec	 mov	 eax, DWORD PTR $T302303[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@VCAspectFilter@@@@QAE@PAVCAspectFilter@@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@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ENDP ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
; Function compile flags: /Odtp
;	COMDAT ??0?$SmartPtr@VCAspectFilter@@@@QAE@ABV0@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_otherPtr$ = 8						; size = 4
??0?$SmartPtr@VCAspectFilter@@@@QAE@ABV0@@Z PROC	; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>, 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@VCAspectFilter@@@@AAEXPAUCounter@@@Z ; SmartPtr<CAspectFilter>::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@VCAspectFilter@@@@QAE@ABV0@@Z ENDP	; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$SmartPtr@VCAspectFilter@@@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0?$SmartPtr@VCAspectFilter@@@@QAE@XZ PROC		; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>, COMDAT
; _this$ = ecx

; 76   :     SmartPtr() : rawPtr(0), counter(0) { }

  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	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0
  00010	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00013	c7 41 04 00 00
	00 00		 mov	 DWORD PTR [ecx+4], 0
  0001a	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001d	8b e5		 mov	 esp, ebp
  0001f	5d		 pop	 ebp
  00020	c3		 ret	 0
??0?$SmartPtr@VCAspectFilter@@@@QAE@XZ ENDP		; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectfilters.cpp
_TEXT	ENDS
;	COMDAT ?getFilterName@CMasterFilterChain@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CMasterFilterChain@@UAEPB_WXZ PROC	; CMasterFilterChain::getFilterName, COMDAT
; _this$ = ecx

; 768  : {

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

; 769  :     return _T("Master Filter Chain");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1CI@JAIKPIPL@?$AAM?$AAa?$AAs?$AAt?$AAe?$AAr?$AA?5?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?5?$AAC?$AAh?$AAa?$AAi?$AAn?$AA?$AA@

; 770  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CMasterFilterChain@@UAEPB_WXZ ENDP	; CMasterFilterChain::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CResizeWindowAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CResizeWindowAspectFilter@@UAEPB_WXZ PROC ; CResizeWindowAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 655  : {

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

; 656  :     return _T("CResizeWindowAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1DE@BEFKOAOK@?$AAC?$AAR?$AAe?$AAs?$AAi?$AAz?$AAe?$AAW?$AAi?$AAn?$AAd?$AAo?$AAw?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 657  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CResizeWindowAspectFilter@@UAEPB_WXZ ENDP ; CResizeWindowAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CScreenSanityAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CScreenSanityAspectFilter@@UAEPB_WXZ PROC ; CScreenSanityAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 562  : {

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

; 563  :     return _T("CScreenSanityAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1DE@JHMGFEDD@?$AAC?$AAS?$AAc?$AAr?$AAe?$AAe?$AAn?$AAS?$AAa?$AAn?$AAi?$AAt?$AAy?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 564  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CScreenSanityAspectFilter@@UAEPB_WXZ ENDP ; CScreenSanityAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CPanAndZoomAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CPanAndZoomAspectFilter@@UAEPB_WXZ PROC	; CPanAndZoomAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 499  : {

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

; 500  :     return _T("CPanAndZoomAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1DA@OAMGCFIK@?$AAC?$AAP?$AAa?$AAn?$AAA?$AAn?$AAd?$AAZ?$AAo?$AAo?$AAm?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 501  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CPanAndZoomAspectFilter@@UAEPB_WXZ ENDP	; CPanAndZoomAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CUnCropAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CUnCropAspectFilter@@UAEPB_WXZ PROC	; CUnCropAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 356  : {

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

; 357  :     return _T("CUnCropAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1CI@PEPEJNPP@?$AAC?$AAU?$AAn?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 358  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CUnCropAspectFilter@@UAEPB_WXZ ENDP	; CUnCropAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CCropAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CCropAspectFilter@@UAEPB_WXZ PROC	; CCropAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 312  : {

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

; 313  :     return _T("CCropAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1CE@CEMNGKAP@?$AAC?$AAC?$AAr?$AAo?$AAp?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 314  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CCropAspectFilter@@UAEPB_WXZ ENDP	; CCropAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CPositionDestinationAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CPositionDestinationAspectFilter@@UAEPB_WXZ PROC ; CPositionDestinationAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 268  : {

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

; 269  :     return _T("CPositionDestinationAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1EC@OAKBJCKB@?$AAC?$AAP?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr@

; 270  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CPositionDestinationAspectFilter@@UAEPB_WXZ ENDP ; CPositionDestinationAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CBounceDestinationAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CBounceDestinationAspectFilter@@UAEPB_WXZ PROC ; CBounceDestinationAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 230  : {

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

; 231  :     return _T("CBounceDestinationAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1DO@GEHFJHFD@?$AAC?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAD?$AAe?$AAs?$AAt?$AAi?$AAn?$AAa?$AAt?$AAi?$AAo?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 232  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CBounceDestinationAspectFilter@@UAEPB_WXZ ENDP ; CBounceDestinationAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@COrbitAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@COrbitAspectFilter@@UAEPB_WXZ PROC	; COrbitAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 195  : {

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

; 196  :     return _T("COrbitAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1CG@LAFGMGLO@?$AAC?$AAO?$AAr?$AAb?$AAi?$AAt?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 197  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@COrbitAspectFilter@@UAEPB_WXZ ENDP	; COrbitAspectFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@CAnalogueBlankingFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@CAnalogueBlankingFilter@@UAEPB_WXZ PROC	; CAnalogueBlankingFilter::getFilterName, COMDAT
; _this$ = ecx

; 165  : {

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

; 166  :     return _T("CAnalogueBlankingFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1DA@NNIJHEEI@?$AAC?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 167  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@CAnalogueBlankingFilter@@UAEPB_WXZ ENDP	; CAnalogueBlankingFilter::getFilterName
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?getFilterName@COverscanAspectFilter@@UAEPB_WXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?getFilterName@COverscanAspectFilter@@UAEPB_WXZ PROC	; COverscanAspectFilter::getFilterName, COMDAT
; _this$ = ecx

; 122  : {

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

; 123  :     return _T("COverscanAspectFilter");

  00007	b8 00 00 00 00	 mov	 eax, OFFSET ??_C@_1CM@MLEDNLNE@?$AAC?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAA?$AAs?$AAp?$AAe?$AAc?$AAt?$AAF?$AAi?$AAl?$AAt?$AAe?$AAr?$AA?$AA@

; 124  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?getFilterName@COverscanAspectFilter@@UAEPB_WXZ ENDP	; COverscanAspectFilter::getFilterName
_TEXT	ENDS
PUBLIC	?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z ; CAspectFilter::SetChild
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z$0
__ehfuncinfo$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_Child$ = 8						; size = 8
?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z PROC ; CAspectFilter::SetChild, COMDAT
; _this$ = ecx

; 103  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@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

; 104  :     m_Child = Child;

  0002d	8d 45 08	 lea	 eax, DWORD PTR _Child$[ebp]
  00030	50		 push	 eax
  00031	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	83 c1 04	 add	 ecx, 4
  00037	e8 00 00 00 00	 call	 ??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@ABV0@@Z ; SmartPtr<CAspectFilter>::operator=

; 105  : }

  0003c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00043	8d 4d 08	 lea	 ecx, DWORD PTR _Child$[ebp]
  00046	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
  0004b	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004e	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00055	59		 pop	 ecx
  00056	8b e5		 mov	 esp, ebp
  00058	5d		 pop	 ebp
  00059	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z$0:
  00000	8d 4d 08	 lea	 ecx, DWORD PTR _Child$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__ehhandler$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@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$?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z ENDP ; CAspectFilter::SetChild
; Function compile flags: /Odtp
;	COMDAT ?DebugDump@CAspectFilter@@UAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@CAspectFilter@@UAEXXZ PROC			; CAspectFilter::DebugDump, COMDAT
; _this$ = ecx

; 99   : {

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

; 100  :     ; // empty if not implemented
; 101  : }

  00007	8b e5		 mov	 esp, ebp
  00009	5d		 pop	 ebp
  0000a	c3		 ret	 0
?DebugDump@CAspectFilter@@UAEXXZ ENDP			; CAspectFilter::DebugDump
_TEXT	ENDS
PUBLIC	??1CAspectFilter@@UAE@XZ			; CAspectFilter::~CAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1CAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CAspectFilter@@UAE@XZ PROC				; CAspectFilter::~CAspectFilter, COMDAT
; _this$ = ecx

; 95   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??1CAspectFilter@@UAE@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	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00029	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CAspectFilter@@6B@
  0002f	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 96   : }

  00036	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0003d	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00040	83 c1 04	 add	 ecx, 4
  00043	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
  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	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1CAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	83 c1 04	 add	 ecx, 4
  00006	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__ehhandler$??1CAspectFilter@@UAE@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 f8	 mov	 ecx, DWORD PTR [edx-8]
  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$??1CAspectFilter@@UAE@XZ
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CAspectFilter@@UAE@XZ ENDP				; CAspectFilter::~CAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCAspectFilter@@UAEPAXI@Z PROC			; CAspectFilter::`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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@21
  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@21:
  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
??_GCAspectFilter@@UAEPAXI@Z ENDP			; CAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0CAspectFilter@@QAE@XZ			; CAspectFilter::CAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CAspectFilter@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CAspectFilter@@QAE@XZ$0
__ehfuncinfo$??0CAspectFilter@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CAspectFilter@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CAspectFilter@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0CAspectFilter@@QAE@XZ PROC				; CAspectFilter::CAspectFilter, COMDAT
; _this$ = ecx

; 91   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CAspectFilter@@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	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00029	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CAspectFilter@@6B@
  0002f	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00032	83 c1 04	 add	 ecx, 4
  00035	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  0003a	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 92   : }

  00041	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00048	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0004b	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004e	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00055	59		 pop	 ecx
  00056	8b e5		 mov	 esp, ebp
  00058	5d		 pop	 ebp
  00059	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CAspectFilter@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	83 c1 04	 add	 ecx, 4
  00006	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__ehhandler$??0CAspectFilter@@QAE@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 f8	 mov	 ecx, DWORD PTR [edx-8]
  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$??0CAspectFilter@@QAE@XZ
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CAspectFilter@@QAE@XZ ENDP				; CAspectFilter::CAspectFilter
PUBLIC	__real@3fd0000000000000
PUBLIC	?position@CPeriodBouncer@@QAENXZ		; CPeriodBouncer::position
EXTRN	__allrem:PROC
;	COMDAT __real@3fd0000000000000
CONST	SEGMENT
__real@3fd0000000000000 DQ 03fd0000000000000r	; 0.25
; Function compile flags: /Odtp
CONST	ENDS
;	COMDAT ?position@CPeriodBouncer@@QAENXZ
_TEXT	SEGMENT
tv148 = -28						; size = 8
_this$ = -20						; size = 4
_val$ = -16						; size = 8
_phase$ = -8						; size = 8
?position@CPeriodBouncer@@QAENXZ PROC			; CPeriodBouncer::position, COMDAT
; _this$ = ecx

; 63   : {

  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 ec	 mov	 DWORD PTR _this$[ebp], ecx

; 64   :     double phase = fmod((((double)((time(NULL)-m_StartTime)%m_Period))/m_Period+0.25),1);

  0000a	83 ec 08	 sub	 esp, 8
  0000d	d9 e8		 fld1
  0000f	dd 1c 24	 fstp	 QWORD PTR [esp]
  00012	6a 00		 push	 0
  00014	e8 00 00 00 00	 call	 _time
  00019	83 c4 04	 add	 esp, 4
  0001c	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  0001f	2b 01		 sub	 eax, DWORD PTR [ecx]
  00021	1b 51 04	 sbb	 edx, DWORD PTR [ecx+4]
  00024	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00027	8b 71 0c	 mov	 esi, DWORD PTR [ecx+12]
  0002a	56		 push	 esi
  0002b	8b 49 08	 mov	 ecx, DWORD PTR [ecx+8]
  0002e	51		 push	 ecx
  0002f	52		 push	 edx
  00030	50		 push	 eax
  00031	e8 00 00 00 00	 call	 __allrem
  00036	89 45 e4	 mov	 DWORD PTR tv148[ebp], eax
  00039	89 55 e8	 mov	 DWORD PTR tv148[ebp+4], edx
  0003c	df 6d e4	 fild	 QWORD PTR tv148[ebp]
  0003f	8b 55 ec	 mov	 edx, DWORD PTR _this$[ebp]
  00042	df 6a 08	 fild	 QWORD PTR [edx+8]
  00045	de f9		 fdivp	 ST(1), ST(0)
  00047	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@3fd0000000000000
  0004d	83 ec 08	 sub	 esp, 8
  00050	dd 1c 24	 fstp	 QWORD PTR [esp]
  00053	e8 00 00 00 00	 call	 _fmod
  00058	83 c4 10	 add	 esp, 16			; 00000010H
  0005b	dd 5d f8	 fstp	 QWORD PTR _phase$[ebp]

; 65   :     // We go from 0% to 100% over m_Period - but start 25% of the way into the phase.
; 66   :     double val = phase*m_Amplitude*2.0;

  0005e	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  00061	dd 45 f8	 fld	 QWORD PTR _phase$[ebp]
  00064	dc 48 10	 fmul	 QWORD PTR [eax+16]
  00067	dc c0		 fadd	 ST(0), ST(0)
  00069	dd 5d f0	 fstp	 QWORD PTR _val$[ebp]

; 67   :     if (val > m_Amplitude)

  0006c	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  0006f	dd 41 10	 fld	 QWORD PTR [ecx+16]
  00072	dc 5d f0	 fcomp	 QWORD PTR _val$[ebp]
  00075	df e0		 fnstsw	 ax
  00077	f6 c4 05	 test	 ah, 5
  0007a	7a 20		 jp	 SHORT $LN1@position

; 68   :     {
; 69   :         val = fabs(2*m_Amplitude-val); // Adjust - 50% into the phase, turn around and go down

  0007c	8b 55 ec	 mov	 edx, DWORD PTR _this$[ebp]
  0007f	dd 05 00 00 00
	00		 fld	 QWORD PTR __real@4000000000000000
  00085	dc 4a 10	 fmul	 QWORD PTR [edx+16]
  00088	dc 65 f0	 fsub	 QWORD PTR _val$[ebp]
  0008b	83 ec 08	 sub	 esp, 8
  0008e	dd 1c 24	 fstp	 QWORD PTR [esp]
  00091	e8 00 00 00 00	 call	 _fabs
  00096	83 c4 08	 add	 esp, 8
  00099	dd 5d f0	 fstp	 QWORD PTR _val$[ebp]
$LN1@position:

; 70   :     }
; 71   :     return val + m_Offset;

  0009c	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  0009f	dd 45 f0	 fld	 QWORD PTR _val$[ebp]
  000a2	dc 40 18	 fadd	 QWORD PTR [eax+24]

; 72   : }

  000a5	5e		 pop	 esi
  000a6	8b e5		 mov	 esp, ebp
  000a8	5d		 pop	 ebp
  000a9	c3		 ret	 0
?position@CPeriodBouncer@@QAENXZ ENDP			; CPeriodBouncer::position
_TEXT	ENDS
PUBLIC	??0CPeriodBouncer@@QAE@_J0NN@Z			; CPeriodBouncer::CPeriodBouncer
; Function compile flags: /Odtp
;	COMDAT ??0CPeriodBouncer@@QAE@_J0NN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_startTime$ = 8						; size = 8
_period$ = 16						; size = 8
_amplitude$ = 24					; size = 8
_offset$ = 32						; size = 8
??0CPeriodBouncer@@QAE@_J0NN@Z PROC			; CPeriodBouncer::CPeriodBouncer, COMDAT
; _this$ = ecx

; 59   : {

  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 4d 08	 mov	 ecx, DWORD PTR _startTime$[ebp]
  0000d	89 08		 mov	 DWORD PTR [eax], ecx
  0000f	8b 55 0c	 mov	 edx, DWORD PTR _startTime$[ebp+4]
  00012	89 50 04	 mov	 DWORD PTR [eax+4], edx
  00015	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00018	8b 4d 10	 mov	 ecx, DWORD PTR _period$[ebp]
  0001b	89 48 08	 mov	 DWORD PTR [eax+8], ecx
  0001e	8b 55 14	 mov	 edx, DWORD PTR _period$[ebp+4]
  00021	89 50 0c	 mov	 DWORD PTR [eax+12], edx
  00024	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00027	dd 45 18	 fld	 QWORD PTR _amplitude$[ebp]
  0002a	dd 58 10	 fstp	 QWORD PTR [eax+16]
  0002d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00030	dd 45 20	 fld	 QWORD PTR _offset$[ebp]
  00033	dd 59 18	 fstp	 QWORD PTR [ecx+24]

; 60   : }

  00036	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00039	8b e5		 mov	 esp, ebp
  0003b	5d		 pop	 ebp
  0003c	c2 20 00	 ret	 32			; 00000020H
??0CPeriodBouncer@@QAE@_J0NN@Z ENDP			; CPeriodBouncer::CPeriodBouncer
_TEXT	ENDS
PUBLIC	??0CPeriodBouncer@@QAE@_JNN@Z			; CPeriodBouncer::CPeriodBouncer
; Function compile flags: /Odtp
;	COMDAT ??0CPeriodBouncer@@QAE@_JNN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_period$ = 8						; size = 8
_amplitude$ = 16					; size = 8
_offset$ = 24						; size = 8
??0CPeriodBouncer@@QAE@_JNN@Z PROC			; CPeriodBouncer::CPeriodBouncer, COMDAT
; _this$ = ecx

; 50   : {

  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 4d 08	 mov	 ecx, DWORD PTR _period$[ebp]
  0000d	89 48 08	 mov	 DWORD PTR [eax+8], ecx
  00010	8b 55 0c	 mov	 edx, DWORD PTR _period$[ebp+4]
  00013	89 50 0c	 mov	 DWORD PTR [eax+12], edx
  00016	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00019	dd 45 10	 fld	 QWORD PTR _amplitude$[ebp]
  0001c	dd 58 10	 fstp	 QWORD PTR [eax+16]
  0001f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00022	dd 45 18	 fld	 QWORD PTR _offset$[ebp]
  00025	dd 59 18	 fstp	 QWORD PTR [ecx+24]

; 51   :     time(&m_StartTime);

  00028	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0002b	52		 push	 edx
  0002c	e8 00 00 00 00	 call	 _time
  00031	83 c4 04	 add	 esp, 4

; 52   : }

  00034	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00037	8b e5		 mov	 esp, ebp
  00039	5d		 pop	 ebp
  0003a	c2 18 00	 ret	 24			; 00000018H
??0CPeriodBouncer@@QAE@_JNN@Z ENDP			; CPeriodBouncer::CPeriodBouncer
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\ioutput.h
_TEXT	ENDS
;	COMDAT ?GetSrcSizeAlign@IOutput@@QBEKXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetSrcSizeAlign@IOutput@@QBEKXZ PROC			; IOutput::GetSrcSizeAlign, COMDAT
; _this$ = ecx

; 87   :     DWORD GetSrcSizeAlign() const {return SrcSizeAlign;};

  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 80 14 02 00
	00		 mov	 eax, DWORD PTR [eax+532]
  00010	8b e5		 mov	 esp, ebp
  00012	5d		 pop	 ebp
  00013	c3		 ret	 0
?GetSrcSizeAlign@IOutput@@QBEKXZ ENDP			; IOutput::GetSrcSizeAlign
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?GetDestSizeAlign@IOutput@@QBEKXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetDestSizeAlign@IOutput@@QBEKXZ PROC			; IOutput::GetDestSizeAlign, COMDAT
; _this$ = ecx

; 86   :     DWORD GetDestSizeAlign() const {return DestSizeAlign;};

  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 80 10 02 00
	00		 mov	 eax, DWORD PTR [eax+528]
  00010	8b e5		 mov	 esp, ebp
  00012	5d		 pop	 ebp
  00013	c3		 ret	 0
?GetDestSizeAlign@IOutput@@QBEKXZ ENDP			; IOutput::GetDestSizeAlign
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectrect.h
_TEXT	ENDS
;	COMDAT ?cropToFitRect@CAspectRect@@QAEXABUtagRECT@@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_r$ = 8							; size = 4
?cropToFitRect@CAspectRect@@QAEXABUtagRECT@@@Z PROC	; CAspectRect::cropToFitRect, COMDAT
; _this$ = ecx

; 243  :     {

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

; 244  :         if (left >= r.right)

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  0000d	8b 10		 mov	 edx, DWORD PTR [eax]
  0000f	3b 51 08	 cmp	 edx, DWORD PTR [ecx+8]
  00012	7c 0e		 jl	 SHORT $LN8@cropToFitR

; 245  :         {
; 246  :             left = r.right - 1;

  00014	8b 45 08	 mov	 eax, DWORD PTR _r$[ebp]
  00017	8b 48 08	 mov	 ecx, DWORD PTR [eax+8]
  0001a	83 e9 01	 sub	 ecx, 1
  0001d	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00020	89 0a		 mov	 DWORD PTR [edx], ecx
$LN8@cropToFitR:

; 247  :         }
; 248  : 
; 249  :         if (top >= r.bottom)

  00022	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00025	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  00028	8b 50 04	 mov	 edx, DWORD PTR [eax+4]
  0002b	3b 51 0c	 cmp	 edx, DWORD PTR [ecx+12]
  0002e	7c 0f		 jl	 SHORT $LN7@cropToFitR

; 250  :         {
; 251  :             top = r.bottom - 1;

  00030	8b 45 08	 mov	 eax, DWORD PTR _r$[ebp]
  00033	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00036	83 e9 01	 sub	 ecx, 1
  00039	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0003c	89 4a 04	 mov	 DWORD PTR [edx+4], ecx
$LN7@cropToFitR:

; 252  :         }
; 253  : 
; 254  :         if (right < r.left)

  0003f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00042	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  00045	8b 50 08	 mov	 edx, DWORD PTR [eax+8]
  00048	3b 11		 cmp	 edx, DWORD PTR [ecx]
  0004a	7d 0e		 jge	 SHORT $LN6@cropToFitR

; 255  :         {
; 256  :             right = r.left + 1;

  0004c	8b 45 08	 mov	 eax, DWORD PTR _r$[ebp]
  0004f	8b 08		 mov	 ecx, DWORD PTR [eax]
  00051	83 c1 01	 add	 ecx, 1
  00054	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00057	89 4a 08	 mov	 DWORD PTR [edx+8], ecx
$LN6@cropToFitR:

; 257  :         }
; 258  : 
; 259  :         if (bottom < r.top)

  0005a	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0005d	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  00060	8b 50 0c	 mov	 edx, DWORD PTR [eax+12]
  00063	3b 51 04	 cmp	 edx, DWORD PTR [ecx+4]
  00066	7d 0f		 jge	 SHORT $LN5@cropToFitR

; 260  :         {
; 261  :             bottom = r.top + 1;

  00068	8b 45 08	 mov	 eax, DWORD PTR _r$[ebp]
  0006b	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  0006e	83 c1 01	 add	 ecx, 1
  00071	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00074	89 4a 0c	 mov	 DWORD PTR [edx+12], ecx
$LN5@cropToFitR:

; 262  :         }
; 263  : 
; 264  :         if (left < r.left)

  00077	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0007a	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  0007d	8b 10		 mov	 edx, DWORD PTR [eax]
  0007f	3b 11		 cmp	 edx, DWORD PTR [ecx]
  00081	7d 0a		 jge	 SHORT $LN4@cropToFitR

; 265  :         {
; 266  :             left = r.left;

  00083	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00086	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  00089	8b 11		 mov	 edx, DWORD PTR [ecx]
  0008b	89 10		 mov	 DWORD PTR [eax], edx
$LN4@cropToFitR:

; 267  :         }
; 268  :         if (right > r.right)

  0008d	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00090	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  00093	8b 50 08	 mov	 edx, DWORD PTR [eax+8]
  00096	3b 51 08	 cmp	 edx, DWORD PTR [ecx+8]
  00099	7e 0c		 jle	 SHORT $LN3@cropToFitR

; 269  :         {
; 270  :             right = r.right;

  0009b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0009e	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  000a1	8b 51 08	 mov	 edx, DWORD PTR [ecx+8]
  000a4	89 50 08	 mov	 DWORD PTR [eax+8], edx
$LN3@cropToFitR:

; 271  :         }
; 272  :         if (top < r.top)

  000a7	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  000aa	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  000ad	8b 50 04	 mov	 edx, DWORD PTR [eax+4]
  000b0	3b 51 04	 cmp	 edx, DWORD PTR [ecx+4]
  000b3	7d 0c		 jge	 SHORT $LN2@cropToFitR

; 273  :         {
; 274  :             top = r.top;

  000b5	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  000b8	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  000bb	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  000be	89 50 04	 mov	 DWORD PTR [eax+4], edx
$LN2@cropToFitR:

; 275  :         }
; 276  :         if (bottom > r.bottom)

  000c1	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  000c4	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  000c7	8b 50 0c	 mov	 edx, DWORD PTR [eax+12]
  000ca	3b 51 0c	 cmp	 edx, DWORD PTR [ecx+12]
  000cd	7e 0c		 jle	 SHORT $LN9@cropToFitR

; 277  :         {
; 278  :             bottom = r.bottom;

  000cf	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  000d2	8b 4d 08	 mov	 ecx, DWORD PTR _r$[ebp]
  000d5	8b 51 0c	 mov	 edx, DWORD PTR [ecx+12]
  000d8	89 50 0c	 mov	 DWORD PTR [eax+12], edx
$LN9@cropToFitR:

; 279  :         }
; 280  :     }

  000db	8b e5		 mov	 esp, ebp
  000dd	5d		 pop	 ebp
  000de	c2 04 00	 ret	 4
?cropToFitRect@CAspectRect@@QAEXABUtagRECT@@@Z ENDP	; CAspectRect::cropToFitRect
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?shift@CAspectRect@@QAEXHH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_dx$ = 8						; size = 4
_dy$ = 12						; size = 4
?shift@CAspectRect@@QAEXHH@Z PROC			; CAspectRect::shift, COMDAT
; _this$ = ecx

; 188  :     {

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

; 189  :         left += dx;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 08		 mov	 ecx, DWORD PTR [eax]
  0000c	03 4d 08	 add	 ecx, DWORD PTR _dx$[ebp]
  0000f	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00012	89 0a		 mov	 DWORD PTR [edx], ecx

; 190  :         right += dx;

  00014	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00017	8b 48 08	 mov	 ecx, DWORD PTR [eax+8]
  0001a	03 4d 08	 add	 ecx, DWORD PTR _dx$[ebp]
  0001d	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00020	89 4a 08	 mov	 DWORD PTR [edx+8], ecx

; 191  :         top += dy;

  00023	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00026	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  00029	03 4d 0c	 add	 ecx, DWORD PTR _dy$[ebp]
  0002c	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0002f	89 4a 04	 mov	 DWORD PTR [edx+4], ecx

; 192  :         bottom += dy;

  00032	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00035	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00038	03 4d 0c	 add	 ecx, DWORD PTR _dy$[ebp]
  0003b	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0003e	89 4a 0c	 mov	 DWORD PTR [edx+12], ecx

; 193  :     }

  00041	8b e5		 mov	 esp, ebp
  00043	5d		 pop	 ebp
  00044	c2 08 00	 ret	 8
?shift@CAspectRect@@QAEXHH@Z ENDP			; CAspectRect::shift
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?normalizeRect@CAspectRect@@QAEXXZ
_TEXT	SEGMENT
_this$ = -12						; size = 4
_t$140969 = -8						; size = 4
_t$140967 = -4						; size = 4
?normalizeRect@CAspectRect@@QAEXXZ PROC			; CAspectRect::normalizeRect, COMDAT
; _this$ = ecx

; 108  :     {

  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

; 109  :         // Ensure left and top are less than bottom and right.
; 110  :         if (left > right)

  00009	8b 45 f4	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	8b 4d f4	 mov	 ecx, DWORD PTR _this$[ebp]
  0000f	8b 10		 mov	 edx, DWORD PTR [eax]
  00011	3b 51 08	 cmp	 edx, DWORD PTR [ecx+8]
  00014	7e 1c		 jle	 SHORT $LN2@normalizeR

; 111  :         {
; 112  :             int t = left;

  00016	8b 45 f4	 mov	 eax, DWORD PTR _this$[ebp]
  00019	8b 08		 mov	 ecx, DWORD PTR [eax]
  0001b	89 4d fc	 mov	 DWORD PTR _t$140967[ebp], ecx

; 113  :             left = right;

  0001e	8b 55 f4	 mov	 edx, DWORD PTR _this$[ebp]
  00021	8b 45 f4	 mov	 eax, DWORD PTR _this$[ebp]
  00024	8b 48 08	 mov	 ecx, DWORD PTR [eax+8]
  00027	89 0a		 mov	 DWORD PTR [edx], ecx

; 114  :             right = t;

  00029	8b 55 f4	 mov	 edx, DWORD PTR _this$[ebp]
  0002c	8b 45 fc	 mov	 eax, DWORD PTR _t$140967[ebp]
  0002f	89 42 08	 mov	 DWORD PTR [edx+8], eax
$LN2@normalizeR:

; 115  :         }
; 116  :         if (top > bottom)

  00032	8b 4d f4	 mov	 ecx, DWORD PTR _this$[ebp]
  00035	8b 55 f4	 mov	 edx, DWORD PTR _this$[ebp]
  00038	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]
  0003b	3b 42 0c	 cmp	 eax, DWORD PTR [edx+12]
  0003e	7e 1e		 jle	 SHORT $LN3@normalizeR

; 117  :         {
; 118  :             int t = top;

  00040	8b 4d f4	 mov	 ecx, DWORD PTR _this$[ebp]
  00043	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  00046	89 55 f8	 mov	 DWORD PTR _t$140969[ebp], edx

; 119  :             top = bottom;

  00049	8b 45 f4	 mov	 eax, DWORD PTR _this$[ebp]
  0004c	8b 4d f4	 mov	 ecx, DWORD PTR _this$[ebp]
  0004f	8b 51 0c	 mov	 edx, DWORD PTR [ecx+12]
  00052	89 50 04	 mov	 DWORD PTR [eax+4], edx

; 120  :             bottom = t;

  00055	8b 45 f4	 mov	 eax, DWORD PTR _this$[ebp]
  00058	8b 4d f8	 mov	 ecx, DWORD PTR _t$140969[ebp]
  0005b	89 48 0c	 mov	 DWORD PTR [eax+12], ecx
$LN3@normalizeR:

; 121  :         }
; 122  :     }

  0005e	8b e5		 mov	 esp, ebp
  00060	5d		 pop	 ebp
  00061	c3		 ret	 0
?normalizeRect@CAspectRect@@QAEXXZ ENDP			; CAspectRect::normalizeRect
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?RoundTo3dp@CAspectRect@@QAENN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_InputNumber$ = 8					; size = 8
?RoundTo3dp@CAspectRect@@QAENN@Z PROC			; CAspectRect::RoundTo3dp, COMDAT
; _this$ = ecx

; 104  :     {

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

; 105  :         return (floor(InputNumber * 1000.0 + 0.5) / 1000.0);

  00007	dd 45 08	 fld	 QWORD PTR _InputNumber$[ebp]
  0000a	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@408f400000000000
  00010	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@3fe0000000000000
  00016	83 ec 08	 sub	 esp, 8
  00019	dd 1c 24	 fstp	 QWORD PTR [esp]
  0001c	e8 00 00 00 00	 call	 _floor
  00021	83 c4 08	 add	 esp, 8
  00024	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@408f400000000000

; 106  :     }

  0002a	8b e5		 mov	 esp, ebp
  0002c	5d		 pop	 ebp
  0002d	c2 08 00	 ret	 8
?RoundTo3dp@CAspectRect@@QAENN@Z ENDP			; CAspectRect::RoundTo3dp
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?height@CAspectRect@@QAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?height@CAspectRect@@QAEHXZ PROC			; CAspectRect::height, COMDAT
; _this$ = ecx

; 84   :     {

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

; 85   :         return bottom - top;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000d	8b 40 0c	 mov	 eax, DWORD PTR [eax+12]
  00010	2b 41 04	 sub	 eax, DWORD PTR [ecx+4]

; 86   :     }

  00013	8b e5		 mov	 esp, ebp
  00015	5d		 pop	 ebp
  00016	c3		 ret	 0
?height@CAspectRect@@QAEHXZ ENDP			; CAspectRect::height
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?width@CAspectRect@@QAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?width@CAspectRect@@QAEHXZ PROC				; CAspectRect::width, COMDAT
; _this$ = ecx

; 80   :     {

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

; 81   :         return right - left;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000d	8b 40 08	 mov	 eax, DWORD PTR [eax+8]
  00010	2b 01		 sub	 eax, DWORD PTR [ecx]

; 82   :     }

  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
?width@CAspectRect@@QAEHXZ ENDP				; CAspectRect::width
_TEXT	ENDS
PUBLIC	__real@3ee4f8b588e368f1
;	COMDAT __real@3ee4f8b588e368f1
CONST	SEGMENT
__real@3ee4f8b588e368f1 DQ 03ee4f8b588e368f1r	; 1e-005
; Function compile flags: /Odtp
CONST	ENDS
;	COMDAT ?tolerantEquals@CAspectRect@@QAEHABV1@H@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_src$ = 8						; size = 4
_tolerance$ = 12					; size = 4
?tolerantEquals@CAspectRect@@QAEHABV1@H@Z PROC		; CAspectRect::tolerantEquals, COMDAT
; _this$ = ecx

; 70   :     {

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

; 71   :         if (fabs(m_OutputAdjustment-src.m_OutputAdjustment) > .00001) return FALSE;

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d 08	 mov	 ecx, DWORD PTR _src$[ebp]
  0000d	dd 40 10	 fld	 QWORD PTR [eax+16]
  00010	dc 61 10	 fsub	 QWORD PTR [ecx+16]
  00013	83 ec 08	 sub	 esp, 8
  00016	dd 1c 24	 fstp	 QWORD PTR [esp]
  00019	e8 00 00 00 00	 call	 _fabs
  0001e	83 c4 08	 add	 esp, 8
  00021	dc 1d 00 00 00
	00		 fcomp	 QWORD PTR __real@3ee4f8b588e368f1
  00027	df e0		 fnstsw	 ax
  00029	f6 c4 41	 test	 ah, 65			; 00000041H
  0002c	75 04		 jne	 SHORT $LN5@tolerantEq
  0002e	33 c0		 xor	 eax, eax
  00030	eb 7b		 jmp	 SHORT $LN6@tolerantEq
$LN5@tolerantEq:

; 72   :         if (abs(left - src.left) > tolerance) return FALSE;

  00032	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00035	8b 45 08	 mov	 eax, DWORD PTR _src$[ebp]
  00038	8b 0a		 mov	 ecx, DWORD PTR [edx]
  0003a	2b 08		 sub	 ecx, DWORD PTR [eax]
  0003c	51		 push	 ecx
  0003d	e8 00 00 00 00	 call	 ?abs@@YAJJ@Z		; abs
  00042	83 c4 04	 add	 esp, 4
  00045	3b 45 0c	 cmp	 eax, DWORD PTR _tolerance$[ebp]
  00048	7e 04		 jle	 SHORT $LN4@tolerantEq
  0004a	33 c0		 xor	 eax, eax
  0004c	eb 5f		 jmp	 SHORT $LN6@tolerantEq
$LN4@tolerantEq:

; 73   :         if (abs(right - src.right) > tolerance) return FALSE;

  0004e	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00051	8b 45 08	 mov	 eax, DWORD PTR _src$[ebp]
  00054	8b 4a 08	 mov	 ecx, DWORD PTR [edx+8]
  00057	2b 48 08	 sub	 ecx, DWORD PTR [eax+8]
  0005a	51		 push	 ecx
  0005b	e8 00 00 00 00	 call	 ?abs@@YAJJ@Z		; abs
  00060	83 c4 04	 add	 esp, 4
  00063	3b 45 0c	 cmp	 eax, DWORD PTR _tolerance$[ebp]
  00066	7e 04		 jle	 SHORT $LN3@tolerantEq
  00068	33 c0		 xor	 eax, eax
  0006a	eb 41		 jmp	 SHORT $LN6@tolerantEq
$LN3@tolerantEq:

; 74   :         if (abs(top - src.top) > tolerance) return FALSE;

  0006c	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0006f	8b 45 08	 mov	 eax, DWORD PTR _src$[ebp]
  00072	8b 4a 04	 mov	 ecx, DWORD PTR [edx+4]
  00075	2b 48 04	 sub	 ecx, DWORD PTR [eax+4]
  00078	51		 push	 ecx
  00079	e8 00 00 00 00	 call	 ?abs@@YAJJ@Z		; abs
  0007e	83 c4 04	 add	 esp, 4
  00081	3b 45 0c	 cmp	 eax, DWORD PTR _tolerance$[ebp]
  00084	7e 04		 jle	 SHORT $LN2@tolerantEq
  00086	33 c0		 xor	 eax, eax
  00088	eb 23		 jmp	 SHORT $LN6@tolerantEq
$LN2@tolerantEq:

; 75   :         if (abs(bottom - src.bottom) > tolerance) return FALSE;

  0008a	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0008d	8b 45 08	 mov	 eax, DWORD PTR _src$[ebp]
  00090	8b 4a 0c	 mov	 ecx, DWORD PTR [edx+12]
  00093	2b 48 0c	 sub	 ecx, DWORD PTR [eax+12]
  00096	51		 push	 ecx
  00097	e8 00 00 00 00	 call	 ?abs@@YAJJ@Z		; abs
  0009c	83 c4 04	 add	 esp, 4
  0009f	3b 45 0c	 cmp	 eax, DWORD PTR _tolerance$[ebp]
  000a2	7e 04		 jle	 SHORT $LN1@tolerantEq
  000a4	33 c0		 xor	 eax, eax
  000a6	eb 05		 jmp	 SHORT $LN6@tolerantEq
$LN1@tolerantEq:

; 76   :         return TRUE;

  000a8	b8 01 00 00 00	 mov	 eax, 1
$LN6@tolerantEq:

; 77   :     }

  000ad	8b e5		 mov	 esp, ebp
  000af	5d		 pop	 ebp
  000b0	c2 08 00	 ret	 8
?tolerantEquals@CAspectRect@@QAEHABV1@H@Z ENDP		; CAspectRect::tolerantEquals
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??4CAspectRect@@QAEAAV0@ABV0@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_src$ = 8						; size = 4
??4CAspectRect@@QAEAAV0@ABV0@@Z PROC			; CAspectRect::operator=, COMDAT
; _this$ = ecx

; 51   :     {

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

; 52   :         if (&src != this)

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

; 53   :         {
; 54   :             left = src.left;

  0000f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00012	8b 55 08	 mov	 edx, DWORD PTR _src$[ebp]
  00015	8b 02		 mov	 eax, DWORD PTR [edx]
  00017	89 01		 mov	 DWORD PTR [ecx], eax

; 55   :             right = src.right;

  00019	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001c	8b 55 08	 mov	 edx, DWORD PTR _src$[ebp]
  0001f	8b 42 08	 mov	 eax, DWORD PTR [edx+8]
  00022	89 41 08	 mov	 DWORD PTR [ecx+8], eax

; 56   :             top = src.top;

  00025	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00028	8b 55 08	 mov	 edx, DWORD PTR _src$[ebp]
  0002b	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  0002e	89 41 04	 mov	 DWORD PTR [ecx+4], eax

; 57   :             bottom = src.bottom;

  00031	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	8b 55 08	 mov	 edx, DWORD PTR _src$[ebp]
  00037	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  0003a	89 41 0c	 mov	 DWORD PTR [ecx+12], eax

; 58   :             m_OutputAdjustment = src.m_OutputAdjustment;

  0003d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00040	8b 55 08	 mov	 edx, DWORD PTR _src$[ebp]
  00043	dd 42 10	 fld	 QWORD PTR [edx+16]
  00046	dd 59 10	 fstp	 QWORD PTR [ecx+16]
$LN1@operator@25:

; 59   :         }
; 60   :         return *this;

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

; 61   :     }

  0004c	8b e5		 mov	 esp, ebp
  0004e	5d		 pop	 ebp
  0004f	c2 04 00	 ret	 4
??4CAspectRect@@QAEAAV0@ABV0@@Z ENDP			; CAspectRect::operator=
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0CAspectRect@@QAE@ABV0@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_src$ = 8						; size = 4
??0CAspectRect@@QAE@ABV0@@Z PROC			; CAspectRect::CAspectRect, COMDAT
; _this$ = ecx

; 46   :     CAspectRect(CAspectRect const &src)

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

; 47   :     {
; 48   :         operator=(src);

  00007	8b 45 08	 mov	 eax, DWORD PTR _src$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ??4CAspectRect@@QAEAAV0@ABV0@@Z ; CAspectRect::operator=

; 49   :     }

  00013	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c2 04 00	 ret	 4
??0CAspectRect@@QAE@ABV0@@Z ENDP			; CAspectRect::CAspectRect
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0CAspectRect@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??0CAspectRect@@QAE@XZ PROC				; CAspectRect::CAspectRect, COMDAT
; _this$ = ecx

; 33   :     CAspectRect()

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

; 34   :     {
; 35   :         left = right = top = bottom = 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 04 00 00
	00 00		 mov	 DWORD PTR [ecx+4], 0
  0001b	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0001e	c7 42 08 00 00
	00 00		 mov	 DWORD PTR [edx+8], 0
  00025	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00028	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0

; 36   :         m_OutputAdjustment = 1;

  0002e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00031	d9 e8		 fld1
  00033	dd 59 10	 fstp	 QWORD PTR [ecx+16]

; 37   :     }

  00036	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00039	8b e5		 mov	 esp, ebp
  0003b	5d		 pop	 ebp
  0003c	c3		 ret	 0
??0CAspectRect@@QAE@XZ ENDP				; CAspectRect::CAspectRect
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ
_TEXT	SEGMENT
tv67 = -8						; size = 4
_this$ = -4						; size = 4
?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ PROC ; std::_Iterator_base_aux::_Getmycont, COMDAT
; _this$ = ecx

; 457  : 		{	// Go through the aux object to get the container

  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

; 458  : 		return _Myaux ? _Myaux->_Getcont() : 0;

  00009	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	83 38 00	 cmp	 DWORD PTR [eax], 0
  0000f	74 0f		 je	 SHORT $LN3@Getmycont
  00011	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00014	8b 09		 mov	 ecx, DWORD PTR [ecx]
  00016	e8 00 00 00 00	 call	 ?_Getcont@_Aux_cont@std@@QBEPBV_Container_base_aux@2@XZ ; std::_Aux_cont::_Getcont
  0001b	89 45 f8	 mov	 DWORD PTR tv67[ebp], eax
  0001e	eb 07		 jmp	 SHORT $LN4@Getmycont
$LN3@Getmycont:
  00020	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR tv67[ebp], 0
$LN4@Getmycont:
  00027	8b 45 f8	 mov	 eax, DWORD PTR tv67[ebp]

; 459  : 		}

  0002a	8b e5		 mov	 esp, ebp
  0002c	5d		 pop	 ebp
  0002d	c3		 ret	 0
?_Getmycont@_Iterator_base_aux@std@@QBEPBV_Container_base_aux@2@XZ ENDP ; std::_Iterator_base_aux::_Getmycont
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::c_str, COMDAT
; _this$ = ecx

; 1650 : 		{	// return pointer to null-terminated nonmutable array

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

; 1651 : 		return (_Myptr());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr

; 1652 : 		}

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::c_str
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
$T317999 = -1						; size = 1
__Newsize$ = 8						; size = 4
?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos, COMDAT
; _this$ = ecx

; 2113 : 		{	// set new length and null terminator

  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

; 2114 : 		_Traits::assign(_Myptr()[_Mysize = _Newsize], _Elem());

  00009	c6 45 ff 00	 mov	 BYTE PTR $T317999[ebp], 0
  0000d	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00010	8b 4d 08	 mov	 ecx, DWORD PTR __Newsize$[ebp]
  00013	89 48 14	 mov	 DWORD PTR [eax+20], ecx
  00016	8d 55 ff	 lea	 edx, DWORD PTR $T317999[ebp]
  00019	52		 push	 edx
  0001a	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0001d	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00022	03 45 08	 add	 eax, DWORD PTR __Newsize$[ebp]
  00025	50		 push	 eax
  00026	e8 00 00 00 00	 call	 ?assign@?$char_traits@D@std@@SAXAADABD@Z ; std::char_traits<char>::assign
  0002b	83 c4 08	 add	 esp, 8

; 2115 : 		}

  0002e	8b e5		 mov	 esp, ebp
  00030	5d		 pop	 ebp
  00031	c2 04 00	 ret	 4
?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
___formal$ = 24						; size = 1
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z PROC ; std::_Traits_helper::copy_s<std::char_traits<char> >, COMDAT

; 596  : 	{

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

; 597  : 		return _Traits::_Copy_s(_First1, _Size, _First2, _Count);

  00003	8b 45 14	 mov	 eax, DWORD PTR __Count$[ebp]
  00006	50		 push	 eax
  00007	8b 4d 10	 mov	 ecx, DWORD PTR __First2$[ebp]
  0000a	51		 push	 ecx
  0000b	8b 55 0c	 mov	 edx, DWORD PTR __Size$[ebp]
  0000e	52		 push	 edx
  0000f	8b 45 08	 mov	 eax, DWORD PTR __First1$[ebp]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 ?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z ; std::char_traits<char>::_Copy_s
  00018	83 c4 10	 add	 esp, 16			; 00000010H

; 598  : 	}

  0001b	5d		 pop	 ebp
  0001c	c3		 ret	 0
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ENDP ; std::_Traits_helper::copy_s<std::char_traits<char> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ??$_Allocate@D@std@@YAPADIPAD@Z
_TEXT	SEGMENT
$T318004 = -12						; size = 12
__Count$ = 8						; size = 4
___formal$ = 12						; size = 4
??$_Allocate@D@std@@YAPADIPAD@Z PROC			; std::_Allocate<char>, 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@53

; 38   : 		_Count = 0;

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

; 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 01	 cmp	 eax, 1
  00020	73 18		 jae	 SHORT $LN2@Allocate@53

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

  00022	6a 00		 push	 0
  00024	8d 4d f4	 lea	 ecx, DWORD PTR $T318004[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 $T318004[ebp]
  00034	50		 push	 eax
  00035	e8 00 00 00 00	 call	 __CxxThrowException@8
$LN2@Allocate@53:

; 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	51		 push	 ecx
  0003e	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00043	83 c4 04	 add	 esp, 4
$LN5@Allocate@53:

; 44   : 	}

  00046	8b e5		 mov	 esp, ebp
  00048	5d		 pop	 ebp
  00049	c3		 ret	 0
??$_Allocate@D@std@@YAPADIPAD@Z ENDP			; std::_Allocate<char>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??_Gbad_alloc@std@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_Gbad_alloc@std@@UAEPAXI@Z PROC			; std::bad_alloc::`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	 ??1bad_alloc@std@@UAE@XZ ; std::bad_alloc::~bad_alloc
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@75
  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@75:
  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
??_Gbad_alloc@std@@UAEPAXI@Z ENDP			; std::bad_alloc::`scalar deleting destructor'
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ
_TEXT	SEGMENT
tv73 = -12						; size = 4
_this$ = -8						; size = 4
__Num$ = -4						; size = 4
?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size, COMDAT
; _this$ = ecx

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

  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

; 1671 : 		size_type _Num = _Mybase::_Alval.max_size();

  00009	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?max_size@?$allocator@D@std@@QBEIXZ ; std::allocator<char>::max_size
  00011	89 45 fc	 mov	 DWORD PTR __Num$[ebp], eax

; 1672 : 		return (_Num <= 1 ? 1 : _Num - 1);

  00014	83 7d fc 01	 cmp	 DWORD PTR __Num$[ebp], 1
  00018	77 09		 ja	 SHORT $LN3@max_size@53
  0001a	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR tv73[ebp], 1
  00021	eb 09		 jmp	 SHORT $LN4@max_size@53
$LN3@max_size@53:
  00023	8b 45 fc	 mov	 eax, DWORD PTR __Num$[ebp]
  00026	83 e8 01	 sub	 eax, 1
  00029	89 45 f4	 mov	 DWORD PTR tv73[ebp], eax
$LN4@max_size@53:
  0002c	8b 45 f4	 mov	 eax, DWORD PTR tv73[ebp]

; 1673 : 		}

  0002f	8b e5		 mov	 esp, ebp
  00031	5d		 pop	 ebp
  00032	c3		 ret	 0
?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z
_TEXT	SEGMENT
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
___formal$ = 24						; size = 1
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z PROC ; std::_Traits_helper::move_s<std::char_traits<char> >, COMDAT

; 623  : 	{

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

; 624  : 		return _Traits::_Move_s(_First1, _Size, _First2, _Count);

  00003	8b 45 14	 mov	 eax, DWORD PTR __Count$[ebp]
  00006	50		 push	 eax
  00007	8b 4d 10	 mov	 ecx, DWORD PTR __First2$[ebp]
  0000a	51		 push	 ecx
  0000b	8b 55 0c	 mov	 edx, DWORD PTR __Size$[ebp]
  0000e	52		 push	 edx
  0000f	8b 45 08	 mov	 eax, DWORD PTR __First1$[ebp]
  00012	50		 push	 eax
  00013	e8 00 00 00 00	 call	 ?_Move_s@?$char_traits@D@std@@SAPADPADIPBDI@Z ; std::char_traits<char>::_Move_s
  00018	83 c4 10	 add	 esp, 16			; 00000010H

; 625  : 	}

  0001b	5d		 pop	 ebp
  0001c	c3		 ret	 0
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ENDP ; std::_Traits_helper::move_s<std::char_traits<char> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Right$ = 8						; size = 4
??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z PROC ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >, COMDAT
; _this$ = ecx

; 478  : 		{	// copy constructor

  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 08	 mov	 eax, DWORD PTR __Right$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ??0?$allocator@D@std@@QAE@ABV01@@Z ; std::allocator<char>::allocator<char>

; 479  : #if defined(_DEBUG)
; 480  : 		if (_Right._Myfirstiter == _IGNORE_MYITERLIST)
; 481  : 			{
; 482  : 			this->_Myfirstiter = _IGNORE_MYITERLIST;
; 483  : 			}
; 484  : #endif
; 485  : 		}

  00013	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c2 04 00	 ret	 4
??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z ENDP ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >
; 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@VCAspectFilter@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@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@VCAspectFilter@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Copy_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,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@20:

; 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@20

; 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@VCAspectFilter@@@@QAEAAV0@ABV0@@Z ; SmartPtr<CAspectFilter>::operator=
  00029	eb d8		 jmp	 SHORT $LN2@Copy_backw@20
$LN1@Copy_backw@20:

; 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@VCAspectFilter@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Copy_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::forward_iterator_tag>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??_G?$SmartPtr@VCAspectFilter@@@@QAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_G?$SmartPtr@VCAspectFilter@@@@QAEPAXI@Z PROC		; SmartPtr<CAspectFilter>::`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@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@76
  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@76:
  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@VCAspectFilter@@@@QAEPAXI@Z ENDP		; SmartPtr<CAspectFilter>::`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@VCAspectFilter@@@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@@Z
_TEXT	SEGMENT
__Ptr$ = 8						; size = 4
??$_Destroy@V?$SmartPtr@VCAspectFilter@@@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@@Z PROC ; std::_Destroy<SmartPtr<CAspectFilter> >, 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@VCAspectFilter@@@@QAEPAXI@Z

; 60   : 	}

  0000d	5d		 pop	 ebp
  0000e	c3		 ret	 0
??$_Destroy@V?$SmartPtr@VCAspectFilter@@@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@@Z ENDP ; std::_Destroy<SmartPtr<CAspectFilter> >
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??$_Construct@V?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??$_Construct@V?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z$0
__ehfuncinfo$??$_Construct@V?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??$_Construct@V?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z
_TEXT	SEGMENT
tv74 = -28						; size = 4
$T318024 = -24						; size = 4
$T318023 = -20						; size = 4
__Vptr$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
??$_Construct@V?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z PROC ; std::_Construct<SmartPtr<CAspectFilter>,SmartPtr<CAspectFilter> >, 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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@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 $T318024[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 $T318024[ebp], 0
  00047	74 11		 je	 SHORT $LN3@Construct@23
  00049	8b 55 0c	 mov	 edx, DWORD PTR __Val$[ebp]
  0004c	52		 push	 edx
  0004d	8b 4d e8	 mov	 ecx, DWORD PTR $T318024[ebp]
  00050	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@ABV0@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  00055	89 45 e4	 mov	 DWORD PTR tv74[ebp], eax
  00058	eb 07		 jmp	 SHORT $LN4@Construct@23
$LN3@Construct@23:
  0005a	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv74[ebp], 0
$LN4@Construct@23:
  00061	8b 45 e4	 mov	 eax, DWORD PTR tv74[ebp]
  00064	89 45 ec	 mov	 DWORD PTR $T318023[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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@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 $T318024[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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z
  00027	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??$_Construct@V?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z ENDP ; std::_Construct<SmartPtr<CAspectFilter>,SmartPtr<CAspectFilter> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ??$_Copy_backward_opt@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
$T318038 = -7						; size = 1
$T318037 = -6						; size = 1
$T318036 = -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@VCAspectFilter@@@@PAV1@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@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<CAspectFilter> *,SmartPtr<CAspectFilter> *>, 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 $T318036[ebp], dl
  0001f	33 c0		 xor	 eax, eax
  00021	88 45 fa	 mov	 BYTE PTR $T318037[ebp], al
  00024	0f b6 4d fb	 movzx	 ecx, BYTE PTR $T318036[ebp]
  00028	51		 push	 ecx
  00029	0f b6 55 fa	 movzx	 edx, BYTE PTR $T318037[ebp]
  0002d	52		 push	 edx
  0002e	0f b6 45 f9	 movzx	 eax, BYTE PTR $T318038[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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@PAV1@Uforward_iterator_tag@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Uforward_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,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@VCAspectFilter@@@@PAV1@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@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<CAspectFilter> *,SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ?destroy@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
?destroy@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@@Z PROC ; std::allocator<SmartPtr<CAspectFilter> >::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@VCAspectFilter@@@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::_Destroy<SmartPtr<CAspectFilter> >
  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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@@Z ENDP ; std::allocator<SmartPtr<CAspectFilter> >::destroy
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?construct@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@ABV3@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
__Val$ = 12						; size = 4
?construct@?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@ABV3@@Z PROC ; std::allocator<SmartPtr<CAspectFilter> >::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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@ABV1@@Z ; std::_Construct<SmartPtr<CAspectFilter>,SmartPtr<CAspectFilter> >
  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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@ABV3@@Z ENDP ; std::allocator<SmartPtr<CAspectFilter> >::construct
; 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@VCAspectFilter@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z
_TEXT	SEGMENT
$T318046 = -2						; size = 1
$T318045 = -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@VCAspectFilter@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Move_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,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 $T318045[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@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::_Ptr_cat<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
  00016	83 c4 08	 add	 esp, 8
  00019	88 45 fe	 mov	 BYTE PTR $T318046[ebp], al
  0001c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T318045[ebp]
  00020	50		 push	 eax
  00021	0f b6 4d fe	 movzx	 ecx, BYTE PTR $T318046[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@VCAspectFilter@@@@PAV1@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Copy_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Move_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::random_access_iterator_tag,std::_Undefined_move_tag>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Val$ = 16						; size = 4
??$_Fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z PROC ; std::_Fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >, 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@31
$LN2@Fill@31:
  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@31:
  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@31

; 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@VCAspectFilter@@@@QAEAAV0@ABV0@@Z ; SmartPtr<CAspectFilter>::operator=
  00022	eb e1		 jmp	 SHORT $LN2@Fill@31
$LN4@Fill@31:

; 3134 : 	}

  00024	5d		 pop	 ebp
  00025	c3		 ret	 0
??$_Fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z ENDP ; std::_Fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >
; 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@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z PROC ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >, 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@20
$LN2@Destroy_ra@20:
  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@20:
  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@20

; 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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::allocator<SmartPtr<CAspectFilter> >::destroy
  00022	eb e1		 jmp	 SHORT $LN2@Destroy_ra@20
$LN4@Destroy_ra@20:

; 235  : 	}

  00024	5d		 pop	 ebp
  00025	c3		 ret	 0
??$_Destroy_range@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z ENDP ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >
_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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$0
__tryblocktable$??$_Uninit_fill_n@PAV?$SmartPtr@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$2
__ehfuncinfo$??$_Uninit_fill_n@PAV?$SmartPtr@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
	DD	01H
	DD	FLAT:__tryblocktable$??$_Uninit_fill_n@PAV?$SmartPtr@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Uninit_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@14
$LN5@Uninit_fil@14:
  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@14:
  0004b	83 7d 0c 00	 cmp	 DWORD PTR __Count$[ebp], 0
  0004f	76 12		 jbe	 SHORT $LN4@Uninit_fil@14

; 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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@ABV3@@Z ; std::allocator<SmartPtr<CAspectFilter> >::construct
  00061	eb d6		 jmp	 SHORT $LN5@Uninit_fil@14
$LN4@Uninit_fil@14:
  00063	eb 37		 jmp	 SHORT $LN10@Uninit_fil@14
__catch$??$_Uninit_fill_n@PAV?$SmartPtr@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@14
$LN2@Uninit_fil@14:
  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@14:
  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@14

; 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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::allocator<SmartPtr<CAspectFilter> >::destroy
  00084	eb e1		 jmp	 SHORT $LN2@Uninit_fil@14
$LN1@Uninit_fil@14:

; 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@14
  0009b	c3		 ret	 0
$LN10@Uninit_fil@14:
  0009c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
$LN9@Uninit_fil@14:

; 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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Uninit_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility
;	COMDAT ??$_Unchecked_move_backward@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00@Z
_TEXT	SEGMENT
$T318070 = -3						; size = 1
$T318069 = -2						; size = 1
$T318068 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
??$_Unchecked_move_backward@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00@Z PROC ; stdext::_Unchecked_move_backward<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>, 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 $T318068[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@VCAspectFilter@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::_Move_cat<SmartPtr<CAspectFilter> *>
  00012	83 c4 04	 add	 esp, 4
  00015	88 45 fe	 mov	 BYTE PTR $T318069[ebp], al
  00018	0f b6 55 ff	 movzx	 edx, BYTE PTR $T318068[ebp]
  0001c	52		 push	 edx
  0001d	0f b6 45 fe	 movzx	 eax, BYTE PTR $T318069[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 $T318070[ebp]
  0002d	50		 push	 eax
  0002e	e8 00 00 00 00	 call	 ??$_Iter_random@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@@std@@YA?AUrandom_access_iterator_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::_Iter_random<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  00054	83 c4 04	 add	 esp, 4
  00057	50		 push	 eax
  00058	e8 00 00 00 00	 call	 ??$_Move_backward_opt@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@Urandom_access_iterator_tag@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00Urandom_access_iterator_tag@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Move_backward_opt<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,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@VCAspectFilter@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00@Z ENDP ; stdext::_Unchecked_move_backward<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z
_TEXT	SEGMENT
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Val$ = 16						; size = 4
??$fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z PROC ; std::fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >, 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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  0001d	83 c4 04	 add	 esp, 4
  00020	50		 push	 eax
  00021	e8 00 00 00 00	 call	 ??$_Fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z ; std::_Fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >
  00026	83 c4 0c	 add	 esp, 12			; 0000000cH

; 3162 : 	}

  00029	5d		 pop	 ebp
  0002a	c3		 ret	 0
??$fill@PAV?$SmartPtr@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z ENDP ; std::fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >
; 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@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@@Z
_TEXT	SEGMENT
$T318075 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Al$ = 16						; size = 4
??$_Destroy_range@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@@Z PROC ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::_Ptr_cat<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
  00011	83 c4 08	 add	 esp, 8
  00014	88 45 ff	 mov	 BYTE PTR $T318075[ebp], al
  00017	0f b6 55 ff	 movzx	 edx, BYTE PTR $T318075[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@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@@Z ENDP ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >
; 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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z
_TEXT	SEGMENT
$T318079 = -2						; size = 1
$T318078 = -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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z PROC ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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 $T318078[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@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::_Ptr_cat<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
  00016	83 c4 08	 add	 esp, 8
  00019	88 45 fe	 mov	 BYTE PTR $T318079[ebp], al
  0001c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T318078[ebp]
  00020	50		 push	 eax
  00021	0f b6 4d fe	 movzx	 ecx, BYTE PTR $T318079[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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ENDP ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Off$ = 8						; size = 4
??Y?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z PROC ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@399
  00017	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN7@operator@399:
  0001c	33 c9		 xor	 ecx, ecx
  0001e	75 fc		 jne	 SHORT $LN7@operator@399

; 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@399
  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@399
$LN4@operator@399:

; 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@399:
  00057	33 d2		 xor	 edx, edx
  00059	75 fc		 jne	 SHORT $LN2@operator@399

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z ENDP ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator+=
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??Y?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Off$ = 8						; size = 4
??Y?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z PROC ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z ENDP ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator+=
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??H?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE?AV01@H@Z PROC ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@H@Z ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE?AV01@H@Z ENDP ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator+
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Destroy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
?_Destroy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@@std@@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@@Z ; std::_Destroy_range<std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Destroy
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??E?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??E?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ PROC ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@400
  00016	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN6@operator@400:
  0001b	33 c9		 xor	 ecx, ecx
  0001d	75 fc		 jne	 SHORT $LN6@operator@400

; 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@400
  00032	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@400:
  00037	33 d2		 xor	 edx, edx
  00039	75 fc		 jne	 SHORT $LN2@operator@400

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ ENDP ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator++
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??D?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEABV?$SmartPtr@VCAspectFilter@@@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??D?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEABV?$SmartPtr@VCAspectFilter@@@@XZ PROC ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@401
  00016	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN6@operator@401:
  0001b	33 c9		 xor	 ecx, ecx
  0001d	75 fc		 jne	 SHORT $LN6@operator@401

; 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@401
  00032	e8 00 00 00 00	 call	 __invalid_parameter_noinfo
$LN2@operator@401:
  00037	33 d2		 xor	 edx, edx
  00039	75 fc		 jne	 SHORT $LN2@operator@401

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEABV?$SmartPtr@VCAspectFilter@@@@XZ ENDP ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator*
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Ufill@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV3@IABV3@@Z PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@IV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAXPAV?$SmartPtr@VCAspectFilter@@@@IABV1@AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ; stdext::unchecked_uninitialized_fill_n<SmartPtr<CAspectFilter> *,unsigned int,SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV3@IABV3@@Z ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Ufill
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Tidy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?_Tidy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXXZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@34

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@I@Z ; std::allocator<SmartPtr<CAspectFilter> >::deallocate
$LN1@Tidy@34:

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXXZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Tidy
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??E?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??E?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ PROC ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ ENDP ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator++
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??D?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEAAV?$SmartPtr@VCAspectFilter@@@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??D?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEAAV?$SmartPtr@VCAspectFilter@@@@XZ PROC ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEABV?$SmartPtr@VCAspectFilter@@@@XZ ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator*

; 340  : 		}

  0000f	8b e5		 mov	 esp, ebp
  00011	5d		 pop	 ebp
  00012	c3		 ret	 0
??D?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEAAV?$SmartPtr@VCAspectFilter@@@@XZ ENDP ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator*
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ$0
__ehfuncinfo$??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
__ehhandler$??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectfilters.cpp
;	COMDAT ?adjustAspect@CMasterFilterChain@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
tv90 = -24						; size = 4
_this$ = -20						; size = 4
$T318111 = -16						; size = 8
_it$143356 = -8						; size = 8
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CMasterFilterChain@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CMasterFilterChain::adjustAspect, COMDAT
; _this$ = ecx

; 758  : {

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

; 759  :     for(vector<SmartPtr<CAspectFilter> >::iterator it = m_FilterChain.begin();

  00009	8d 45 f8	 lea	 eax, DWORD PTR _it$143356[ebp]
  0000c	50		 push	 eax
  0000d	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00010	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00013	e8 00 00 00 00	 call	 ?begin@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::begin

; 760  :         it != m_FilterChain.end();

  00018	eb 08		 jmp	 SHORT $LN3@adjustAspe
$LN2@adjustAspe:

; 761  :         ++it)

  0001a	8d 4d f8	 lea	 ecx, DWORD PTR _it$143356[ebp]
  0001d	e8 00 00 00 00	 call	 ??E?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEAAV01@XZ ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator++
$LN3@adjustAspe:
  00022	8d 4d f0	 lea	 ecx, DWORD PTR $T318111[ebp]
  00025	51		 push	 ecx
  00026	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00029	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0002c	e8 00 00 00 00	 call	 ?end@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::end
  00031	50		 push	 eax
  00032	8d 4d f8	 lea	 ecx, DWORD PTR _it$143356[ebp]
  00035	e8 00 00 00 00	 call	 ??9?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE_NABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator!=
  0003a	0f b6 d0	 movzx	 edx, al
  0003d	85 d2		 test	 edx, edx
  0003f	74 29		 je	 SHORT $LN4@adjustAspe

; 762  :     {
; 763  :         (*it)->adjustAspect(ar, RequestRerun);

  00041	8d 4d f8	 lea	 ecx, DWORD PTR _it$143356[ebp]
  00044	e8 00 00 00 00	 call	 ??D?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEAAV?$SmartPtr@VCAspectFilter@@@@XZ ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator*
  00049	8b c8		 mov	 ecx, eax
  0004b	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::operator->
  00050	89 45 e8	 mov	 DWORD PTR tv90[ebp], eax
  00053	8b 45 0c	 mov	 eax, DWORD PTR _RequestRerun$[ebp]
  00056	50		 push	 eax
  00057	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0005a	51		 push	 ecx
  0005b	8b 55 e8	 mov	 edx, DWORD PTR tv90[ebp]
  0005e	8b 02		 mov	 eax, DWORD PTR [edx]
  00060	8b 4d e8	 mov	 ecx, DWORD PTR tv90[ebp]
  00063	8b 50 08	 mov	 edx, DWORD PTR [eax+8]
  00066	ff d2		 call	 edx
  00068	eb b0		 jmp	 SHORT $LN2@adjustAspe
$LN4@adjustAspe:

; 764  :     }
; 765  : }

  0006a	8b e5		 mov	 esp, ebp
  0006c	5d		 pop	 ebp
  0006d	c2 08 00	 ret	 8
?adjustAspect@CMasterFilterChain@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CMasterFilterChain::adjustAspect
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CResizeWindowAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CResizeWindowAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1CResizeWindowAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CResizeWindowAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CResizeWindowAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CResizeWindowAspectFilter@@UAE@XZ PROC		; CResizeWindowAspectFilter::~CResizeWindowAspectFilter, 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$??1CResizeWindowAspectFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1CResizeWindowAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1CResizeWindowAspectFilter@@UAE@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$??1CResizeWindowAspectFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CResizeWindowAspectFilter@@UAE@XZ ENDP		; CResizeWindowAspectFilter::~CResizeWindowAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CUnCropAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CUnCropAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1CUnCropAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CUnCropAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CUnCropAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CUnCropAspectFilter@@UAE@XZ PROC			; CUnCropAspectFilter::~CUnCropAspectFilter, 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$??1CUnCropAspectFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1CUnCropAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1CUnCropAspectFilter@@UAE@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$??1CUnCropAspectFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CUnCropAspectFilter@@UAE@XZ ENDP			; CUnCropAspectFilter::~CUnCropAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CCropAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CCropAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1CCropAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CCropAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CCropAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CCropAspectFilter@@UAE@XZ PROC			; CCropAspectFilter::~CCropAspectFilter, 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$??1CCropAspectFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1CCropAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1CCropAspectFilter@@UAE@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$??1CCropAspectFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CCropAspectFilter@@UAE@XZ ENDP			; CCropAspectFilter::~CCropAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCResizeWindowAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCResizeWindowAspectFilter@@UAEPAXI@Z PROC		; CResizeWindowAspectFilter::`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	 ??1CResizeWindowAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@77
  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@77:
  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
??_GCResizeWindowAspectFilter@@UAEPAXI@Z ENDP		; CResizeWindowAspectFilter::`scalar deleting destructor'
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??_GCUnCropAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCUnCropAspectFilter@@UAEPAXI@Z PROC			; CUnCropAspectFilter::`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	 ??1CUnCropAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@78
  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@78:
  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
??_GCUnCropAspectFilter@@UAEPAXI@Z ENDP			; CUnCropAspectFilter::`scalar deleting destructor'
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??_GCCropAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCCropAspectFilter@@UAEPAXI@Z PROC			; CCropAspectFilter::`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	 ??1CCropAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@79
  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@79:
  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
??_GCCropAspectFilter@@UAEPAXI@Z ENDP			; CCropAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CMasterFilterChain@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CMasterFilterChain@@UAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??1CMasterFilterChain@@UAE@XZ$1
__ehfuncinfo$??1CMasterFilterChain@@UAE@XZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??1CMasterFilterChain@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CMasterFilterChain@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CMasterFilterChain@@UAE@XZ PROC			; CMasterFilterChain::~CMasterFilterChain, 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$??1CMasterFilterChain@@UAE@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 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  0002d	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00031	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00037	e8 00 00 00 00	 call	 ??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
  0003c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00043	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00046	e8 00 00 00 00	 call	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  0004b	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004e	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00055	59		 pop	 ecx
  00056	8b e5		 mov	 esp, ebp
  00058	5d		 pop	 ebp
  00059	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1CMasterFilterChain@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__unwindfunclet$??1CMasterFilterChain@@UAE@XZ$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000e	e9 00 00 00 00	 jmp	 ??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
__ehhandler$??1CMasterFilterChain@@UAE@XZ:
  00013	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00017	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001a	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  0001d	33 c8		 xor	 ecx, eax
  0001f	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00024	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1CMasterFilterChain@@UAE@XZ
  00029	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CMasterFilterChain@@UAE@XZ ENDP			; CMasterFilterChain::~CMasterFilterChain
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CResizeWindowAspectFilter@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CResizeWindowAspectFilter@@QAE@XZ$0
__ehfuncinfo$??0CResizeWindowAspectFilter@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CResizeWindowAspectFilter@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CResizeWindowAspectFilter@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0CResizeWindowAspectFilter@@QAE@XZ PROC		; CResizeWindowAspectFilter::CResizeWindowAspectFilter, 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$??0CResizeWindowAspectFilter@@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	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00029	e8 00 00 00 00	 call	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CResizeWindowAspectFilter@@6B@
  0003e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00045	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  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	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CResizeWindowAspectFilter@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0CResizeWindowAspectFilter@@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$??0CResizeWindowAspectFilter@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CResizeWindowAspectFilter@@QAE@XZ ENDP		; CResizeWindowAspectFilter::CResizeWindowAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CUnCropAspectFilter@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CUnCropAspectFilter@@QAE@XZ$0
__ehfuncinfo$??0CUnCropAspectFilter@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CUnCropAspectFilter@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CUnCropAspectFilter@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0CUnCropAspectFilter@@QAE@XZ PROC			; CUnCropAspectFilter::CUnCropAspectFilter, 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$??0CUnCropAspectFilter@@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	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00029	e8 00 00 00 00	 call	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CUnCropAspectFilter@@6B@
  0003e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00045	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  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	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CUnCropAspectFilter@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0CUnCropAspectFilter@@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$??0CUnCropAspectFilter@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CUnCropAspectFilter@@QAE@XZ ENDP			; CUnCropAspectFilter::CUnCropAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CCropAspectFilter@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CCropAspectFilter@@QAE@XZ$0
__ehfuncinfo$??0CCropAspectFilter@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CCropAspectFilter@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CCropAspectFilter@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0CCropAspectFilter@@QAE@XZ PROC			; CCropAspectFilter::CCropAspectFilter, 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$??0CCropAspectFilter@@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	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00029	e8 00 00 00 00	 call	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CCropAspectFilter@@6B@
  0003e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00045	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  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	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CCropAspectFilter@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0CCropAspectFilter@@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$??0CCropAspectFilter@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CCropAspectFilter@@QAE@XZ ENDP			; CCropAspectFilter::CCropAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCMasterFilterChain@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCMasterFilterChain@@UAEPAXI@Z PROC			; CMasterFilterChain::`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	 ??1CMasterFilterChain@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@80
  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@80:
  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
??_GCMasterFilterChain@@UAEPAXI@Z ENDP			; CMasterFilterChain::`scalar deleting destructor'
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CScreenSanityAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CScreenSanityAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1CScreenSanityAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CScreenSanityAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CScreenSanityAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CScreenSanityAspectFilter@@UAE@XZ PROC		; CScreenSanityAspectFilter::~CScreenSanityAspectFilter, 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$??1CScreenSanityAspectFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1CScreenSanityAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1CScreenSanityAspectFilter@@UAE@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$??1CScreenSanityAspectFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CScreenSanityAspectFilter@@UAE@XZ ENDP		; CScreenSanityAspectFilter::~CScreenSanityAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCScreenSanityAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCScreenSanityAspectFilter@@UAEPAXI@Z PROC		; CScreenSanityAspectFilter::`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	 ??1CScreenSanityAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@81
  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@81:
  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
??_GCScreenSanityAspectFilter@@UAEPAXI@Z ENDP		; CScreenSanityAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0CScreenSanityAspectFilter@@QAE@HH@Z		; CScreenSanityAspectFilter::CScreenSanityAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CScreenSanityAspectFilter@@QAE@HH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CScreenSanityAspectFilter@@QAE@HH@Z$0
__ehfuncinfo$??0CScreenSanityAspectFilter@@QAE@HH@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CScreenSanityAspectFilter@@QAE@HH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CScreenSanityAspectFilter@@QAE@HH@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_SrcWidth$ = 8						; size = 4
_SrcHeight$ = 12					; size = 4
??0CScreenSanityAspectFilter@@QAE@HH@Z PROC		; CScreenSanityAspectFilter::CScreenSanityAspectFilter, COMDAT
; _this$ = ecx

; 508  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CScreenSanityAspectFilter@@QAE@HH@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	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CScreenSanityAspectFilter@@6B@

; 509  :     m_SrcWidth = SrcWidth;

  0003e	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00041	8b 55 08	 mov	 edx, DWORD PTR _SrcWidth$[ebp]
  00044	89 51 0c	 mov	 DWORD PTR [ecx+12], edx

; 510  :     m_SrcHeight = SrcHeight;

  00047	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0004a	8b 4d 0c	 mov	 ecx, DWORD PTR _SrcHeight$[ebp]
  0004d	89 48 10	 mov	 DWORD PTR [eax+16], ecx

; 511  : }

  00050	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00057	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0005a	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0005d	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00064	59		 pop	 ecx
  00065	8b e5		 mov	 esp, ebp
  00067	5d		 pop	 ebp
  00068	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CScreenSanityAspectFilter@@QAE@HH@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0CScreenSanityAspectFilter@@QAE@HH@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$??0CScreenSanityAspectFilter@@QAE@HH@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CScreenSanityAspectFilter@@QAE@HH@Z ENDP		; CScreenSanityAspectFilter::CScreenSanityAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CPanAndZoomAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CPanAndZoomAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1CPanAndZoomAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CPanAndZoomAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CPanAndZoomAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CPanAndZoomAspectFilter@@UAE@XZ PROC			; CPanAndZoomAspectFilter::~CPanAndZoomAspectFilter, 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$??1CPanAndZoomAspectFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1CPanAndZoomAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1CPanAndZoomAspectFilter@@UAE@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$??1CPanAndZoomAspectFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CPanAndZoomAspectFilter@@UAE@XZ ENDP			; CPanAndZoomAspectFilter::~CPanAndZoomAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCPanAndZoomAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCPanAndZoomAspectFilter@@UAEPAXI@Z PROC		; CPanAndZoomAspectFilter::`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	 ??1CPanAndZoomAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@82
  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@82:
  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
??_GCPanAndZoomAspectFilter@@UAEPAXI@Z ENDP		; CPanAndZoomAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z		; CPanAndZoomAspectFilter::CPanAndZoomAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z$0
__ehfuncinfo$??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__xPos$ = 8						; size = 4
__yPos$ = 12						; size = 4
__xZoom$ = 16						; size = 4
__yZoom$ = 20						; size = 4
??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z PROC		; CPanAndZoomAspectFilter::CPanAndZoomAspectFilter, COMDAT
; _this$ = ecx

; 367  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CPanAndZoomAspectFilter@@QAE@JJJJ@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	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CPanAndZoomAspectFilter@@6B@

; 368  :     m_XPos = (double)_xPos / 100.0;

  0003e	db 45 08	 fild	 DWORD PTR __xPos$[ebp]
  00041	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4059000000000000
  00047	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0004a	dd 59 10	 fstp	 QWORD PTR [ecx+16]

; 369  :     m_YPos = (double)_yPos / 100.0;

  0004d	db 45 0c	 fild	 DWORD PTR __yPos$[ebp]
  00050	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4059000000000000
  00056	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  00059	dd 5a 18	 fstp	 QWORD PTR [edx+24]

; 370  :     m_XZoom = (double)_xZoom / 100.0;

  0005c	db 45 10	 fild	 DWORD PTR __xZoom$[ebp]
  0005f	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4059000000000000
  00065	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00068	dd 58 20	 fstp	 QWORD PTR [eax+32]

; 371  :     m_YZoom = (double)_yZoom / 100.0;

  0006b	db 45 14	 fild	 DWORD PTR __yZoom$[ebp]
  0006e	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4059000000000000
  00074	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00077	dd 59 28	 fstp	 QWORD PTR [ecx+40]

; 372  : }

  0007a	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00081	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  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	c2 10 00	 ret	 16			; 00000010H
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0CPanAndZoomAspectFilter@@QAE@JJJJ@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$??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z ENDP		; CPanAndZoomAspectFilter::CPanAndZoomAspectFilter
; Function compile flags: /Odtp
;	COMDAT ?adjustAspect@CUnCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
tv565 = -160						; size = 4
tv553 = -156						; size = 4
tv540 = -152						; size = 4
tv528 = -148						; size = 4
tv500 = -144						; size = 4
tv487 = -140						; size = 4
tv475 = -136						; size = 4
tv462 = -132						; size = 4
tv459 = -128						; size = 4
tv579 = -124						; size = 8
tv456 = -116						; size = 4
tv453 = -112						; size = 4
tv577 = -108						; size = 8
tv450 = -100						; size = 4
tv78 = -96						; size = 4
_this$ = -92						; size = 4
_vScale$ = -88						; size = 8
_rOriginalSrc$ = -80					; size = 24
_lastSrc$ = -56						; size = 24
_rOriginalDest$ = -32					; size = 24
_hScale$ = -8						; size = 8
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CUnCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CUnCropAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 319  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	81 ec a0 00 00
	00		 sub	 esp, 160		; 000000a0H
  00009	89 4d a4	 mov	 DWORD PTR _this$[ebp], ecx

; 320  :     // Save source and dest going in - needed for un-cropping the window...
; 321  :     CAspectRect rOriginalDest(ar.m_CurrentOverlayDestRect);

  0000c	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0000f	83 c0 50	 add	 eax, 80			; 00000050H
  00012	50		 push	 eax
  00013	8d 4d e0	 lea	 ecx, DWORD PTR _rOriginalDest$[ebp]
  00016	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@ABV0@@Z ; CAspectRect::CAspectRect

; 322  :     CAspectRect rOriginalSrc(ar.m_CurrentOverlaySrcRect);

  0001b	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0001e	83 c1 68	 add	 ecx, 104		; 00000068H
  00021	51		 push	 ecx
  00022	8d 4d b0	 lea	 ecx, DWORD PTR _rOriginalSrc$[ebp]
  00025	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@ABV0@@Z ; CAspectRect::CAspectRect

; 323  : 
; 324  :     // Apply sub-filters
; 325  :     m_Child->adjustAspect(ar, RequestRerun);

  0002a	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	83 c1 04	 add	 ecx, 4
  00030	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::operator->
  00035	89 45 a0	 mov	 DWORD PTR tv78[ebp], eax
  00038	8b 55 0c	 mov	 edx, DWORD PTR _RequestRerun$[ebp]
  0003b	52		 push	 edx
  0003c	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0003f	50		 push	 eax
  00040	8b 4d a0	 mov	 ecx, DWORD PTR tv78[ebp]
  00043	8b 11		 mov	 edx, DWORD PTR [ecx]
  00045	8b 4d a0	 mov	 ecx, DWORD PTR tv78[ebp]
  00048	8b 42 08	 mov	 eax, DWORD PTR [edx+8]
  0004b	ff d0		 call	 eax

; 326  :     CAspectRect lastSrc = ar.m_CurrentOverlaySrcRect;

  0004d	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00050	83 c1 68	 add	 ecx, 104		; 00000068H
  00053	51		 push	 ecx
  00054	8d 4d c8	 lea	 ecx, DWORD PTR _lastSrc$[ebp]
  00057	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@ABV0@@Z ; CAspectRect::CAspectRect

; 327  : 
; 328  :     // Figure out where we have space left and add it back in (up to the amount of image we have)
; 329  :     double vScale = (double)ar.m_CurrentOverlayDestRect.height() / (double)ar.m_CurrentOverlaySrcRect.height();

  0005c	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0005f	83 c1 50	 add	 ecx, 80			; 00000050H
  00062	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00067	89 45 9c	 mov	 DWORD PTR tv450[ebp], eax
  0006a	db 45 9c	 fild	 DWORD PTR tv450[ebp]
  0006d	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00070	83 c1 68	 add	 ecx, 104		; 00000068H
  00073	dd 5d 94	 fstp	 QWORD PTR tv577[ebp]
  00076	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  0007b	89 45 90	 mov	 DWORD PTR tv453[ebp], eax
  0007e	db 45 90	 fild	 DWORD PTR tv453[ebp]
  00081	dc 7d 94	 fdivr	 QWORD PTR tv577[ebp]
  00084	dd 5d a8	 fstp	 QWORD PTR _vScale$[ebp]

; 330  :     double hScale = (double)ar.m_CurrentOverlayDestRect.width() / (double)ar.m_CurrentOverlaySrcRect.width();

  00087	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0008a	83 c1 50	 add	 ecx, 80			; 00000050H
  0008d	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00092	89 45 8c	 mov	 DWORD PTR tv456[ebp], eax
  00095	db 45 8c	 fild	 DWORD PTR tv456[ebp]
  00098	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0009b	83 c1 68	 add	 ecx, 104		; 00000068H
  0009e	dd 5d 84	 fstp	 QWORD PTR tv579[ebp]
  000a1	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  000a6	89 45 80	 mov	 DWORD PTR tv459[ebp], eax
  000a9	db 45 80	 fild	 DWORD PTR tv459[ebp]
  000ac	dc 7d 84	 fdivr	 QWORD PTR tv579[ebp]
  000af	dd 5d f8	 fstp	 QWORD PTR _hScale$[ebp]

; 331  : 
; 332  :     // Scale the source image to use the entire display area
; 333  :     ar.m_CurrentOverlaySrcRect.left -= (int)floor((ar.m_CurrentOverlayDestRect.left - rOriginalDest.left)/hScale);

  000b2	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  000b5	8b 42 50	 mov	 eax, DWORD PTR [edx+80]
  000b8	2b 45 e0	 sub	 eax, DWORD PTR _rOriginalDest$[ebp]
  000bb	89 85 7c ff ff
	ff		 mov	 DWORD PTR tv462[ebp], eax
  000c1	db 85 7c ff ff
	ff		 fild	 DWORD PTR tv462[ebp]
  000c7	dc 75 f8	 fdiv	 QWORD PTR _hScale$[ebp]
  000ca	83 ec 08	 sub	 esp, 8
  000cd	dd 1c 24	 fstp	 QWORD PTR [esp]
  000d0	e8 00 00 00 00	 call	 _floor
  000d5	83 c4 08	 add	 esp, 8
  000d8	e8 00 00 00 00	 call	 __ftol2_sse
  000dd	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000e0	8b 51 68	 mov	 edx, DWORD PTR [ecx+104]
  000e3	2b d0		 sub	 edx, eax
  000e5	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  000e8	89 50 68	 mov	 DWORD PTR [eax+104], edx

; 334  :     ar.m_CurrentOverlaySrcRect.right += (int)floor((rOriginalDest.right - ar.m_CurrentOverlayDestRect.right)/hScale);

  000eb	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000ee	8b 55 e8	 mov	 edx, DWORD PTR _rOriginalDest$[ebp+8]
  000f1	2b 51 58	 sub	 edx, DWORD PTR [ecx+88]
  000f4	89 95 78 ff ff
	ff		 mov	 DWORD PTR tv475[ebp], edx
  000fa	db 85 78 ff ff
	ff		 fild	 DWORD PTR tv475[ebp]
  00100	dc 75 f8	 fdiv	 QWORD PTR _hScale$[ebp]
  00103	83 ec 08	 sub	 esp, 8
  00106	dd 1c 24	 fstp	 QWORD PTR [esp]
  00109	e8 00 00 00 00	 call	 _floor
  0010e	83 c4 08	 add	 esp, 8
  00111	e8 00 00 00 00	 call	 __ftol2_sse
  00116	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00119	03 41 70	 add	 eax, DWORD PTR [ecx+112]
  0011c	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  0011f	89 42 70	 mov	 DWORD PTR [edx+112], eax

; 335  :     ar.m_CurrentOverlaySrcRect.top -= (int)floor((ar.m_CurrentOverlayDestRect.top - rOriginalDest.top)/vScale);

  00122	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  00125	8b 48 54	 mov	 ecx, DWORD PTR [eax+84]
  00128	2b 4d e4	 sub	 ecx, DWORD PTR _rOriginalDest$[ebp+4]
  0012b	89 8d 74 ff ff
	ff		 mov	 DWORD PTR tv487[ebp], ecx
  00131	db 85 74 ff ff
	ff		 fild	 DWORD PTR tv487[ebp]
  00137	dc 75 a8	 fdiv	 QWORD PTR _vScale$[ebp]
  0013a	83 ec 08	 sub	 esp, 8
  0013d	dd 1c 24	 fstp	 QWORD PTR [esp]
  00140	e8 00 00 00 00	 call	 _floor
  00145	83 c4 08	 add	 esp, 8
  00148	e8 00 00 00 00	 call	 __ftol2_sse
  0014d	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  00150	8b 4a 6c	 mov	 ecx, DWORD PTR [edx+108]
  00153	2b c8		 sub	 ecx, eax
  00155	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  00158	89 4a 6c	 mov	 DWORD PTR [edx+108], ecx

; 336  :     ar.m_CurrentOverlaySrcRect.bottom += (int)floor((rOriginalDest.bottom - ar.m_CurrentOverlayDestRect.bottom)/vScale);

  0015b	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0015e	8b 4d ec	 mov	 ecx, DWORD PTR _rOriginalDest$[ebp+12]
  00161	2b 48 5c	 sub	 ecx, DWORD PTR [eax+92]
  00164	89 8d 70 ff ff
	ff		 mov	 DWORD PTR tv500[ebp], ecx
  0016a	db 85 70 ff ff
	ff		 fild	 DWORD PTR tv500[ebp]
  00170	dc 75 a8	 fdiv	 QWORD PTR _vScale$[ebp]
  00173	83 ec 08	 sub	 esp, 8
  00176	dd 1c 24	 fstp	 QWORD PTR [esp]
  00179	e8 00 00 00 00	 call	 _floor
  0017e	83 c4 08	 add	 esp, 8
  00181	e8 00 00 00 00	 call	 __ftol2_sse
  00186	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  00189	03 42 74	 add	 eax, DWORD PTR [edx+116]
  0018c	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0018f	89 41 74	 mov	 DWORD PTR [ecx+116], eax

; 337  : 
; 338  :     // Can't use crop function in rectangle - rounding differences in scaling factors
; 339  :     // due to calculating factors at different times cause issues
; 340  :     // Need to do all cropping and scaling w/ same scale factors...
; 341  : 
; 342  :     // Clip the source image to actually available image
; 343  :     if (ar.m_CurrentOverlaySrcRect.left < rOriginalSrc.left) ar.m_CurrentOverlaySrcRect.left = rOriginalSrc.left;

  00192	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  00195	8b 42 68	 mov	 eax, DWORD PTR [edx+104]
  00198	3b 45 b0	 cmp	 eax, DWORD PTR _rOriginalSrc$[ebp]
  0019b	7d 09		 jge	 SHORT $LN4@adjustAspe@2
  0019d	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  001a0	8b 55 b0	 mov	 edx, DWORD PTR _rOriginalSrc$[ebp]
  001a3	89 51 68	 mov	 DWORD PTR [ecx+104], edx
$LN4@adjustAspe@2:

; 344  :     if (ar.m_CurrentOverlaySrcRect.right > rOriginalSrc.right) ar.m_CurrentOverlaySrcRect.right = rOriginalSrc.right;

  001a6	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  001a9	8b 48 70	 mov	 ecx, DWORD PTR [eax+112]
  001ac	3b 4d b8	 cmp	 ecx, DWORD PTR _rOriginalSrc$[ebp+8]
  001af	7e 09		 jle	 SHORT $LN3@adjustAspe@2
  001b1	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  001b4	8b 45 b8	 mov	 eax, DWORD PTR _rOriginalSrc$[ebp+8]
  001b7	89 42 70	 mov	 DWORD PTR [edx+112], eax
$LN3@adjustAspe@2:

; 345  :     if (ar.m_CurrentOverlaySrcRect.top < rOriginalSrc.top) ar.m_CurrentOverlaySrcRect.top = rOriginalSrc.top;

  001ba	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  001bd	8b 51 6c	 mov	 edx, DWORD PTR [ecx+108]
  001c0	3b 55 b4	 cmp	 edx, DWORD PTR _rOriginalSrc$[ebp+4]
  001c3	7d 09		 jge	 SHORT $LN2@adjustAspe@2
  001c5	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  001c8	8b 4d b4	 mov	 ecx, DWORD PTR _rOriginalSrc$[ebp+4]
  001cb	89 48 6c	 mov	 DWORD PTR [eax+108], ecx
$LN2@adjustAspe@2:

; 346  :     if (ar.m_CurrentOverlaySrcRect.bottom > rOriginalSrc.bottom) ar.m_CurrentOverlaySrcRect.bottom = rOriginalSrc.bottom;

  001ce	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  001d1	8b 42 74	 mov	 eax, DWORD PTR [edx+116]
  001d4	3b 45 bc	 cmp	 eax, DWORD PTR _rOriginalSrc$[ebp+12]
  001d7	7e 09		 jle	 SHORT $LN1@adjustAspe@2
  001d9	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  001dc	8b 55 bc	 mov	 edx, DWORD PTR _rOriginalSrc$[ebp+12]
  001df	89 51 74	 mov	 DWORD PTR [ecx+116], edx
$LN1@adjustAspe@2:

; 347  : 
; 348  :     // Now scale the destination to the source remaining
; 349  :     ar.m_CurrentOverlayDestRect.left += (int)floor((ar.m_CurrentOverlaySrcRect.left-lastSrc.left)*hScale);

  001e2	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  001e5	8b 48 68	 mov	 ecx, DWORD PTR [eax+104]
  001e8	2b 4d c8	 sub	 ecx, DWORD PTR _lastSrc$[ebp]
  001eb	89 8d 6c ff ff
	ff		 mov	 DWORD PTR tv528[ebp], ecx
  001f1	db 85 6c ff ff
	ff		 fild	 DWORD PTR tv528[ebp]
  001f7	dc 4d f8	 fmul	 QWORD PTR _hScale$[ebp]
  001fa	83 ec 08	 sub	 esp, 8
  001fd	dd 1c 24	 fstp	 QWORD PTR [esp]
  00200	e8 00 00 00 00	 call	 _floor
  00205	83 c4 08	 add	 esp, 8
  00208	e8 00 00 00 00	 call	 __ftol2_sse
  0020d	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  00210	03 42 50	 add	 eax, DWORD PTR [edx+80]
  00213	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00216	89 41 50	 mov	 DWORD PTR [ecx+80], eax

; 350  :     ar.m_CurrentOverlayDestRect.right -= (int)floor((lastSrc.right-ar.m_CurrentOverlaySrcRect.right)*hScale);

  00219	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  0021c	8b 45 d0	 mov	 eax, DWORD PTR _lastSrc$[ebp+8]
  0021f	2b 42 70	 sub	 eax, DWORD PTR [edx+112]
  00222	89 85 68 ff ff
	ff		 mov	 DWORD PTR tv540[ebp], eax
  00228	db 85 68 ff ff
	ff		 fild	 DWORD PTR tv540[ebp]
  0022e	dc 4d f8	 fmul	 QWORD PTR _hScale$[ebp]
  00231	83 ec 08	 sub	 esp, 8
  00234	dd 1c 24	 fstp	 QWORD PTR [esp]
  00237	e8 00 00 00 00	 call	 _floor
  0023c	83 c4 08	 add	 esp, 8
  0023f	e8 00 00 00 00	 call	 __ftol2_sse
  00244	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00247	8b 51 58	 mov	 edx, DWORD PTR [ecx+88]
  0024a	2b d0		 sub	 edx, eax
  0024c	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0024f	89 50 58	 mov	 DWORD PTR [eax+88], edx

; 351  :     ar.m_CurrentOverlayDestRect.top += (int)floor((ar.m_CurrentOverlaySrcRect.top-lastSrc.top)*vScale);

  00252	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00255	8b 51 6c	 mov	 edx, DWORD PTR [ecx+108]
  00258	2b 55 cc	 sub	 edx, DWORD PTR _lastSrc$[ebp+4]
  0025b	89 95 64 ff ff
	ff		 mov	 DWORD PTR tv553[ebp], edx
  00261	db 85 64 ff ff
	ff		 fild	 DWORD PTR tv553[ebp]
  00267	dc 4d a8	 fmul	 QWORD PTR _vScale$[ebp]
  0026a	83 ec 08	 sub	 esp, 8
  0026d	dd 1c 24	 fstp	 QWORD PTR [esp]
  00270	e8 00 00 00 00	 call	 _floor
  00275	83 c4 08	 add	 esp, 8
  00278	e8 00 00 00 00	 call	 __ftol2_sse
  0027d	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00280	03 41 54	 add	 eax, DWORD PTR [ecx+84]
  00283	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  00286	89 42 54	 mov	 DWORD PTR [edx+84], eax

; 352  :     ar.m_CurrentOverlayDestRect.bottom -= (int)floor((lastSrc.bottom-ar.m_CurrentOverlaySrcRect.bottom)*vScale);

  00289	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0028c	8b 4d d4	 mov	 ecx, DWORD PTR _lastSrc$[ebp+12]
  0028f	2b 48 74	 sub	 ecx, DWORD PTR [eax+116]
  00292	89 8d 60 ff ff
	ff		 mov	 DWORD PTR tv565[ebp], ecx
  00298	db 85 60 ff ff
	ff		 fild	 DWORD PTR tv565[ebp]
  0029e	dc 4d a8	 fmul	 QWORD PTR _vScale$[ebp]
  002a1	83 ec 08	 sub	 esp, 8
  002a4	dd 1c 24	 fstp	 QWORD PTR [esp]
  002a7	e8 00 00 00 00	 call	 _floor
  002ac	83 c4 08	 add	 esp, 8
  002af	e8 00 00 00 00	 call	 __ftol2_sse
  002b4	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  002b7	8b 4a 5c	 mov	 ecx, DWORD PTR [edx+92]
  002ba	2b c8		 sub	 ecx, eax
  002bc	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  002bf	89 4a 5c	 mov	 DWORD PTR [edx+92], ecx

; 353  : }

  002c2	8b e5		 mov	 esp, ebp
  002c4	5d		 pop	 ebp
  002c5	c2 08 00	 ret	 8
?adjustAspect@CUnCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CUnCropAspectFilter::adjustAspect
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustAspect@CPositionDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
tv162 = -40						; size = 4
tv153 = -36						; size = 4
tv75 = -32						; size = 4
_this$ = -28						; size = 4
_oldDest$ = -24						; size = 24
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CPositionDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CPositionDestinationAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 248  : {

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

; 249  :     #ifdef __ASPECTFILTER_DEBUG__
; 250  :         LOG(2,_T("PRE FILTER VALUES: %s"),this->getFilterName());
; 251  :         ar.DebugDump();
; 252  :     #endif
; 253  : 
; 254  :     CAspectRect oldDest = ar.m_CurrentOverlayDestRect;

  0000a	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0000d	83 c0 50	 add	 eax, 80			; 00000050H
  00010	50		 push	 eax
  00011	8d 4d e8	 lea	 ecx, DWORD PTR _oldDest$[ebp]
  00014	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@ABV0@@Z ; CAspectRect::CAspectRect

; 255  : 
; 256  :     m_Child->adjustAspect(ar, RequestRerun);

  00019	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0001c	83 c1 04	 add	 ecx, 4
  0001f	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::operator->
  00024	89 45 e0	 mov	 DWORD PTR tv75[ebp], eax
  00027	8b 4d 0c	 mov	 ecx, DWORD PTR _RequestRerun$[ebp]
  0002a	51		 push	 ecx
  0002b	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  0002e	52		 push	 edx
  0002f	8b 45 e0	 mov	 eax, DWORD PTR tv75[ebp]
  00032	8b 10		 mov	 edx, DWORD PTR [eax]
  00034	8b 4d e0	 mov	 ecx, DWORD PTR tv75[ebp]
  00037	8b 42 08	 mov	 eax, DWORD PTR [edx+8]
  0003a	ff d0		 call	 eax

; 257  : 
; 258  :     ar.m_CurrentOverlayDestRect.shift((int) (((oldDest.width()-ar.m_CurrentOverlayDestRect.width())*m_XPos)/2),
; 259  :                                  (int) (((oldDest.height()-ar.m_CurrentOverlayDestRect.height())*m_YPos)/2));

  0003c	8d 4d e8	 lea	 ecx, DWORD PTR _oldDest$[ebp]
  0003f	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00044	8b f0		 mov	 esi, eax
  00046	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00049	83 c1 50	 add	 ecx, 80			; 00000050H
  0004c	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00051	2b f0		 sub	 esi, eax
  00053	89 75 dc	 mov	 DWORD PTR tv153[ebp], esi
  00056	db 45 dc	 fild	 DWORD PTR tv153[ebp]
  00059	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0005c	dc 49 18	 fmul	 QWORD PTR [ecx+24]
  0005f	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4000000000000000
  00065	e8 00 00 00 00	 call	 __ftol2_sse
  0006a	50		 push	 eax
  0006b	8d 4d e8	 lea	 ecx, DWORD PTR _oldDest$[ebp]
  0006e	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00073	8b f0		 mov	 esi, eax
  00075	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00078	83 c1 50	 add	 ecx, 80			; 00000050H
  0007b	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00080	2b f0		 sub	 esi, eax
  00082	89 75 d8	 mov	 DWORD PTR tv162[ebp], esi
  00085	db 45 d8	 fild	 DWORD PTR tv162[ebp]
  00088	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  0008b	dc 4a 10	 fmul	 QWORD PTR [edx+16]
  0008e	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4000000000000000
  00094	e8 00 00 00 00	 call	 __ftol2_sse
  00099	50		 push	 eax
  0009a	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0009d	83 c1 50	 add	 ecx, 80			; 00000050H
  000a0	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift

; 260  : 
; 261  :     #ifdef __ASPECTFILTER_DEBUG__
; 262  :         LOG(2,_T("POST FILTER VALUES: %s"),this->getFilterName());
; 263  :         ar.DebugDump();
; 264  :     #endif
; 265  : }

  000a5	5e		 pop	 esi
  000a6	8b e5		 mov	 esp, ebp
  000a8	5d		 pop	 ebp
  000a9	c2 08 00	 ret	 8
?adjustAspect@CPositionDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CPositionDestinationAspectFilter::adjustAspect
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CPositionDestinationAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CPositionDestinationAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1CPositionDestinationAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CPositionDestinationAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CPositionDestinationAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CPositionDestinationAspectFilter@@UAE@XZ PROC	; CPositionDestinationAspectFilter::~CPositionDestinationAspectFilter, 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$??1CPositionDestinationAspectFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1CPositionDestinationAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1CPositionDestinationAspectFilter@@UAE@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$??1CPositionDestinationAspectFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CPositionDestinationAspectFilter@@UAE@XZ ENDP	; CPositionDestinationAspectFilter::~CPositionDestinationAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCPositionDestinationAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCPositionDestinationAspectFilter@@UAEPAXI@Z PROC	; CPositionDestinationAspectFilter::`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	 ??1CPositionDestinationAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@83
  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@83:
  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
??_GCPositionDestinationAspectFilter@@UAEPAXI@Z ENDP	; CPositionDestinationAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0CPositionDestinationAspectFilter@@QAE@NN@Z	; CPositionDestinationAspectFilter::CPositionDestinationAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CPositionDestinationAspectFilter@@QAE@NN@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CPositionDestinationAspectFilter@@QAE@NN@Z$0
__ehfuncinfo$??0CPositionDestinationAspectFilter@@QAE@NN@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CPositionDestinationAspectFilter@@QAE@NN@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CPositionDestinationAspectFilter@@QAE@NN@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_x$ = 8							; size = 8
_y$ = 16						; size = 8
??0CPositionDestinationAspectFilter@@QAE@NN@Z PROC	; CPositionDestinationAspectFilter::CPositionDestinationAspectFilter, COMDAT
; _this$ = ecx

; 244  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CPositionDestinationAspectFilter@@QAE@NN@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	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CPositionDestinationAspectFilter@@6B@
  0003e	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00041	dd 45 08	 fld	 QWORD PTR _x$[ebp]
  00044	dd 59 10	 fstp	 QWORD PTR [ecx+16]
  00047	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  0004a	dd 45 10	 fld	 QWORD PTR _y$[ebp]
  0004d	dd 5a 18	 fstp	 QWORD PTR [edx+24]

; 245  : }

  00050	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00057	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0005a	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0005d	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00064	59		 pop	 ecx
  00065	8b e5		 mov	 esp, ebp
  00067	5d		 pop	 ebp
  00068	c2 10 00	 ret	 16			; 00000010H
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CPositionDestinationAspectFilter@@QAE@NN@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0CPositionDestinationAspectFilter@@QAE@NN@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$??0CPositionDestinationAspectFilter@@QAE@NN@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CPositionDestinationAspectFilter@@QAE@NN@Z ENDP	; CPositionDestinationAspectFilter::CPositionDestinationAspectFilter
; Function compile flags: /Odtp
;	COMDAT ?adjustAspect@CBounceDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
tv168 = -48						; size = 4
tv160 = -44						; size = 4
tv75 = -40						; size = 4
_this$ = -36						; size = 4
_oldDest$ = -32						; size = 24
_pos$ = -8						; size = 8
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CBounceDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CBounceDestinationAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 219  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 30	 sub	 esp, 48			; 00000030H
  00006	56		 push	 esi
  00007	89 4d dc	 mov	 DWORD PTR _this$[ebp], ecx

; 220  :     CAspectRect oldDest = ar.m_CurrentOverlayDestRect;

  0000a	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0000d	83 c0 50	 add	 eax, 80			; 00000050H
  00010	50		 push	 eax
  00011	8d 4d e0	 lea	 ecx, DWORD PTR _oldDest$[ebp]
  00014	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@ABV0@@Z ; CAspectRect::CAspectRect

; 221  : 
; 222  :     m_Child->adjustAspect(ar, RequestRerun);

  00019	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001c	83 c1 04	 add	 ecx, 4
  0001f	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::operator->
  00024	89 45 d8	 mov	 DWORD PTR tv75[ebp], eax
  00027	8b 4d 0c	 mov	 ecx, DWORD PTR _RequestRerun$[ebp]
  0002a	51		 push	 ecx
  0002b	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  0002e	52		 push	 edx
  0002f	8b 45 d8	 mov	 eax, DWORD PTR tv75[ebp]
  00032	8b 10		 mov	 edx, DWORD PTR [eax]
  00034	8b 4d d8	 mov	 ecx, DWORD PTR tv75[ebp]
  00037	8b 42 08	 mov	 eax, DWORD PTR [edx+8]
  0003a	ff d0		 call	 eax

; 223  : 
; 224  :     double pos = m_pBouncer->position();

  0003c	8b 4d dc	 mov	 ecx, DWORD PTR _this$[ebp]
  0003f	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00042	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::operator->
  00047	8b c8		 mov	 ecx, eax
  00049	e8 00 00 00 00	 call	 ?position@CPeriodBouncer@@QAENXZ ; CPeriodBouncer::position
  0004e	dd 5d f8	 fstp	 QWORD PTR _pos$[ebp]

; 225  :     ar.m_CurrentOverlayDestRect.shift((int) (((oldDest.width()-ar.m_CurrentOverlayDestRect.width())*pos)/2),
; 226  :                                  (int) (((oldDest.height()-ar.m_CurrentOverlayDestRect.height())*pos)/2));

  00051	8d 4d e0	 lea	 ecx, DWORD PTR _oldDest$[ebp]
  00054	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00059	8b f0		 mov	 esi, eax
  0005b	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0005e	83 c1 50	 add	 ecx, 80			; 00000050H
  00061	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00066	2b f0		 sub	 esi, eax
  00068	89 75 d4	 mov	 DWORD PTR tv160[ebp], esi
  0006b	db 45 d4	 fild	 DWORD PTR tv160[ebp]
  0006e	dc 4d f8	 fmul	 QWORD PTR _pos$[ebp]
  00071	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4000000000000000
  00077	e8 00 00 00 00	 call	 __ftol2_sse
  0007c	50		 push	 eax
  0007d	8d 4d e0	 lea	 ecx, DWORD PTR _oldDest$[ebp]
  00080	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00085	8b f0		 mov	 esi, eax
  00087	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0008a	83 c1 50	 add	 ecx, 80			; 00000050H
  0008d	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00092	2b f0		 sub	 esi, eax
  00094	89 75 d0	 mov	 DWORD PTR tv168[ebp], esi
  00097	db 45 d0	 fild	 DWORD PTR tv168[ebp]
  0009a	dc 4d f8	 fmul	 QWORD PTR _pos$[ebp]
  0009d	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4000000000000000
  000a3	e8 00 00 00 00	 call	 __ftol2_sse
  000a8	50		 push	 eax
  000a9	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000ac	83 c1 50	 add	 ecx, 80			; 00000050H
  000af	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift

; 227  : }

  000b4	5e		 pop	 esi
  000b5	8b e5		 mov	 esp, ebp
  000b7	5d		 pop	 ebp
  000b8	c2 08 00	 ret	 8
?adjustAspect@CBounceDestinationAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CBounceDestinationAspectFilter::adjustAspect
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CBounceDestinationAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CBounceDestinationAspectFilter@@UAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??1CBounceDestinationAspectFilter@@UAE@XZ$1
__ehfuncinfo$??1CBounceDestinationAspectFilter@@UAE@XZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??1CBounceDestinationAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CBounceDestinationAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CBounceDestinationAspectFilter@@UAE@XZ PROC		; CBounceDestinationAspectFilter::~CBounceDestinationAspectFilter, 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$??1CBounceDestinationAspectFilter@@UAE@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 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  0002d	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00031	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00037	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
  0003c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00043	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00046	e8 00 00 00 00	 call	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  0004b	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004e	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00055	59		 pop	 ecx
  00056	8b e5		 mov	 esp, ebp
  00058	5d		 pop	 ebp
  00059	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1CBounceDestinationAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__unwindfunclet$??1CBounceDestinationAspectFilter@@UAE@XZ$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000e	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
__ehhandler$??1CBounceDestinationAspectFilter@@UAE@XZ:
  00013	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00017	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001a	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  0001d	33 c8		 xor	 ecx, eax
  0001f	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00024	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1CBounceDestinationAspectFilter@@UAE@XZ
  00029	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CBounceDestinationAspectFilter@@UAE@XZ ENDP		; CBounceDestinationAspectFilter::~CBounceDestinationAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCBounceDestinationAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCBounceDestinationAspectFilter@@UAEPAXI@Z PROC	; CBounceDestinationAspectFilter::`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	 ??1CBounceDestinationAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@84
  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@84:
  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
??_GCBounceDestinationAspectFilter@@UAEPAXI@Z ENDP	; CBounceDestinationAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	__real@bff0000000000000
PUBLIC	??0CBounceDestinationAspectFilter@@QAE@_J@Z	; CBounceDestinationAspectFilter::CBounceDestinationAspectFilter
;	COMDAT __real@bff0000000000000
CONST	SEGMENT
__real@bff0000000000000 DQ 0bff0000000000000r	; -1
CONST	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CBounceDestinationAspectFilter@@QAE@_J@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CBounceDestinationAspectFilter@@QAE@_J@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0CBounceDestinationAspectFilter@@QAE@_J@Z$1
	DD	00H
	DD	FLAT:__unwindfunclet$??0CBounceDestinationAspectFilter@@QAE@_J@Z$2
__ehfuncinfo$??0CBounceDestinationAspectFilter@@QAE@_J@Z DD 019930522H
	DD	03H
	DD	FLAT:__unwindtable$??0CBounceDestinationAspectFilter@@QAE@_J@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CBounceDestinationAspectFilter@@QAE@_J@Z
_TEXT	SEGMENT
tv133 = -28						; size = 4
_this$ = -24						; size = 4
$T318265 = -20						; size = 4
$T318264 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_period$ = 8						; size = 8
??0CBounceDestinationAspectFilter@@QAE@_J@Z PROC	; CBounceDestinationAspectFilter::CBounceDestinationAspectFilter, COMDAT
; _this$ = ecx

; 211  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CBounceDestinationAspectFilter@@QAE@_J@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 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  0002b	e8 00 00 00 00	 call	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  00030	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00037	8b 45 e8	 mov	 eax, DWORD PTR _this$[ebp]
  0003a	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CBounceDestinationAspectFilter@@6B@
  00040	6a 20		 push	 32			; 00000020H
  00042	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00047	83 c4 04	 add	 esp, 4
  0004a	89 45 ec	 mov	 DWORD PTR $T318265[ebp], eax
  0004d	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00051	83 7d ec 00	 cmp	 DWORD PTR $T318265[ebp], 0
  00055	74 52		 je	 SHORT $LN4@CBounceDes@2
  00057	db 05 b4 00 00
	00		 fild	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+180
  0005d	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@bff0000000000000
  00063	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4059000000000000
  00069	83 ec 08	 sub	 esp, 8
  0006c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0006f	db 05 b4 00 00
	00		 fild	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+180
  00075	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@4000000000000000
  0007b	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4059000000000000
  00081	83 ec 08	 sub	 esp, 8
  00084	dd 1c 24	 fstp	 QWORD PTR [esp]
  00087	8b 4d 0c	 mov	 ecx, DWORD PTR _period$[ebp+4]
  0008a	51		 push	 ecx
  0008b	8b 55 08	 mov	 edx, DWORD PTR _period$[ebp]
  0008e	52		 push	 edx
  0008f	a1 a4 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+164
  00094	50		 push	 eax
  00095	8b 0d a0 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+160
  0009b	51		 push	 ecx
  0009c	8b 4d ec	 mov	 ecx, DWORD PTR $T318265[ebp]
  0009f	e8 00 00 00 00	 call	 ??0CPeriodBouncer@@QAE@_J0NN@Z ; CPeriodBouncer::CPeriodBouncer
  000a4	89 45 e4	 mov	 DWORD PTR tv133[ebp], eax
  000a7	eb 07		 jmp	 SHORT $LN5@CBounceDes@2
$LN4@CBounceDes@2:
  000a9	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv133[ebp], 0
$LN5@CBounceDes@2:
  000b0	8b 55 e4	 mov	 edx, DWORD PTR tv133[ebp]
  000b3	89 55 f0	 mov	 DWORD PTR $T318264[ebp], edx
  000b6	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  000ba	6a 00		 push	 0
  000bc	8b 45 f0	 mov	 eax, DWORD PTR $T318264[ebp]
  000bf	50		 push	 eax
  000c0	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  000c3	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000c6	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z ; SmartPtr<CPeriodBouncer>::SmartPtr<CPeriodBouncer>
  000cb	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2

; 212  :     if (AspectSettings.BounceStartTime == 0)

  000cf	8b 0d a0 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+160
  000d5	0b 0d a4 00 00
	00		 or	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+164
  000db	75 0d		 jne	 SHORT $LN1@CBounceDes@2

; 213  :     {
; 214  :         time(&AspectSettings.BounceStartTime);

  000dd	68 a0 00 00 00	 push	 OFFSET ?AspectSettings@@3UTAspectSettings@@A+160
  000e2	e8 00 00 00 00	 call	 _time
  000e7	83 c4 04	 add	 esp, 4
$LN1@CBounceDes@2:

; 215  :     }
; 216  : }

  000ea	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000f1	8b 45 e8	 mov	 eax, DWORD PTR _this$[ebp]
  000f4	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000f7	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000fe	59		 pop	 ecx
  000ff	8b e5		 mov	 esp, ebp
  00101	5d		 pop	 ebp
  00102	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CBounceDestinationAspectFilter@@QAE@_J@Z$0:
  00000	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__unwindfunclet$??0CBounceDestinationAspectFilter@@QAE@_J@Z$1:
  00008	8b 45 ec	 mov	 eax, DWORD PTR $T318265[ebp]
  0000b	50		 push	 eax
  0000c	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00011	59		 pop	 ecx
  00012	c3		 ret	 0
__unwindfunclet$??0CBounceDestinationAspectFilter@@QAE@_J@Z$2:
  00013	8b 4d e8	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00019	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
__ehhandler$??0CBounceDestinationAspectFilter@@QAE@_J@Z:
  0001e	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00022	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00025	8b 4a ec	 mov	 ecx, DWORD PTR [edx-20]
  00028	33 c8		 xor	 ecx, eax
  0002a	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002f	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0CBounceDestinationAspectFilter@@QAE@_J@Z
  00034	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CBounceDestinationAspectFilter@@QAE@_J@Z ENDP	; CBounceDestinationAspectFilter::CBounceDestinationAspectFilter
; Function compile flags: /Odtp
;	COMDAT ?adjustAspect@COrbitAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@COrbitAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; COrbitAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 189  : {

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

; 190  :     ar.m_CurrentOverlaySrcRect.shift((int)m_pXOrbitBouncer->position(),
; 191  :                                 (int)m_pYOrbitBouncer->position());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	83 c1 14	 add	 ecx, 20			; 00000014H
  0000d	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::operator->
  00012	8b c8		 mov	 ecx, eax
  00014	e8 00 00 00 00	 call	 ?position@CPeriodBouncer@@QAENXZ ; CPeriodBouncer::position
  00019	e8 00 00 00 00	 call	 __ftol2_sse
  0001e	50		 push	 eax
  0001f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00022	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00025	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::operator->
  0002a	8b c8		 mov	 ecx, eax
  0002c	e8 00 00 00 00	 call	 ?position@CPeriodBouncer@@QAENXZ ; CPeriodBouncer::position
  00031	e8 00 00 00 00	 call	 __ftol2_sse
  00036	50		 push	 eax
  00037	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0003a	83 c1 68	 add	 ecx, 104		; 00000068H
  0003d	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift

; 192  : }

  00042	8b e5		 mov	 esp, ebp
  00044	5d		 pop	 ebp
  00045	c2 08 00	 ret	 8
?adjustAspect@COrbitAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; COrbitAspectFilter::adjustAspect
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1COrbitAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1COrbitAspectFilter@@UAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??1COrbitAspectFilter@@UAE@XZ$1
	DD	01H
	DD	FLAT:__unwindfunclet$??1COrbitAspectFilter@@UAE@XZ$2
__ehfuncinfo$??1COrbitAspectFilter@@UAE@XZ DD 019930522H
	DD	03H
	DD	FLAT:__unwindtable$??1COrbitAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1COrbitAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1COrbitAspectFilter@@UAE@XZ PROC			; COrbitAspectFilter::~COrbitAspectFilter, 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$??1COrbitAspectFilter@@UAE@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 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 2
  0002d	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00031	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	83 c1 14	 add	 ecx, 20			; 00000014H
  00037	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
  0003c	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00040	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00043	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00046	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
  0004b	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00052	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00055	e8 00 00 00 00	 call	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  0005a	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0005d	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00064	59		 pop	 ecx
  00065	8b e5		 mov	 esp, ebp
  00067	5d		 pop	 ebp
  00068	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1COrbitAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__unwindfunclet$??1COrbitAspectFilter@@UAE@XZ$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000e	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
__unwindfunclet$??1COrbitAspectFilter@@UAE@XZ$2:
  00013	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 c1 14	 add	 ecx, 20			; 00000014H
  00019	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
__ehhandler$??1COrbitAspectFilter@@UAE@XZ:
  0001e	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00022	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00025	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00028	33 c8		 xor	 ecx, eax
  0002a	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002f	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1COrbitAspectFilter@@UAE@XZ
  00034	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1COrbitAspectFilter@@UAE@XZ ENDP			; COrbitAspectFilter::~COrbitAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCOrbitAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCOrbitAspectFilter@@UAEPAXI@Z PROC			; COrbitAspectFilter::`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	 ??1COrbitAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@85
  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@85:
  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
??_GCOrbitAspectFilter@@UAEPAXI@Z ENDP			; COrbitAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0COrbitAspectFilter@@QAE@_J0J@Z		; COrbitAspectFilter::COrbitAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0COrbitAspectFilter@@QAE@_J0J@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$1
	DD	00H
	DD	FLAT:__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$2
	DD	02H
	DD	FLAT:__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$3
	DD	02H
	DD	FLAT:__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$4
__ehfuncinfo$??0COrbitAspectFilter@@QAE@_J0J@Z DD 019930522H
	DD	05H
	DD	FLAT:__unwindtable$??0COrbitAspectFilter@@QAE@_J0J@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0COrbitAspectFilter@@QAE@_J0J@Z
_TEXT	SEGMENT
tv153 = -48						; size = 4
tv188 = -44						; size = 4
tv131 = -40						; size = 4
tv169 = -36						; size = 4
_this$ = -32						; size = 4
$T318301 = -28						; size = 4
$T318300 = -24						; size = 4
$T318297 = -20						; size = 4
$T318296 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_OrbitPeriodX$ = 8					; size = 8
_OrbitPeriodY$ = 16					; size = 8
_OrbitSize$ = 24					; size = 4
??0COrbitAspectFilter@@QAE@_J0J@Z PROC			; COrbitAspectFilter::COrbitAspectFilter, COMDAT
; _this$ = ecx

; 181  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0COrbitAspectFilter@@QAE@_J0J@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 24	 sub	 esp, 36			; 00000024H
  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 e0	 mov	 DWORD PTR _this$[ebp], ecx
  00028	8b 4d e0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002b	e8 00 00 00 00	 call	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  00030	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00037	8b 45 e0	 mov	 eax, DWORD PTR _this$[ebp]
  0003a	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7COrbitAspectFilter@@6B@
  00040	6a 20		 push	 32			; 00000020H
  00042	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00047	83 c4 04	 add	 esp, 4
  0004a	89 45 ec	 mov	 DWORD PTR $T318297[ebp], eax
  0004d	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00051	83 7d ec 00	 cmp	 DWORD PTR $T318297[ebp], 0
  00055	74 43		 je	 SHORT $LN4@COrbitAspe
  00057	8b 4d 18	 mov	 ecx, DWORD PTR _OrbitSize$[ebp]
  0005a	f7 d9		 neg	 ecx
  0005c	89 4d dc	 mov	 DWORD PTR tv169[ebp], ecx
  0005f	db 45 dc	 fild	 DWORD PTR tv169[ebp]
  00062	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4000000000000000
  00068	83 ec 08	 sub	 esp, 8
  0006b	dd 1c 24	 fstp	 QWORD PTR [esp]
  0006e	db 45 18	 fild	 DWORD PTR _OrbitSize$[ebp]
  00071	83 ec 08	 sub	 esp, 8
  00074	dd 1c 24	 fstp	 QWORD PTR [esp]
  00077	8b 55 0c	 mov	 edx, DWORD PTR _OrbitPeriodX$[ebp+4]
  0007a	52		 push	 edx
  0007b	8b 45 08	 mov	 eax, DWORD PTR _OrbitPeriodX$[ebp]
  0007e	50		 push	 eax
  0007f	8b 0d a4 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+164
  00085	51		 push	 ecx
  00086	8b 15 a0 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+160
  0008c	52		 push	 edx
  0008d	8b 4d ec	 mov	 ecx, DWORD PTR $T318297[ebp]
  00090	e8 00 00 00 00	 call	 ??0CPeriodBouncer@@QAE@_J0NN@Z ; CPeriodBouncer::CPeriodBouncer
  00095	89 45 d8	 mov	 DWORD PTR tv131[ebp], eax
  00098	eb 07		 jmp	 SHORT $LN5@COrbitAspe
$LN4@COrbitAspe:
  0009a	c7 45 d8 00 00
	00 00		 mov	 DWORD PTR tv131[ebp], 0
$LN5@COrbitAspe:
  000a1	8b 45 d8	 mov	 eax, DWORD PTR tv131[ebp]
  000a4	89 45 f0	 mov	 DWORD PTR $T318296[ebp], eax
  000a7	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  000ab	6a 00		 push	 0
  000ad	8b 4d f0	 mov	 ecx, DWORD PTR $T318296[ebp]
  000b0	51		 push	 ecx
  000b1	8b 4d e0	 mov	 ecx, DWORD PTR _this$[ebp]
  000b4	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000b7	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z ; SmartPtr<CPeriodBouncer>::SmartPtr<CPeriodBouncer>
  000bc	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  000c0	6a 20		 push	 32			; 00000020H
  000c2	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  000c7	83 c4 04	 add	 esp, 4
  000ca	89 45 e4	 mov	 DWORD PTR $T318301[ebp], eax
  000cd	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  000d1	83 7d e4 00	 cmp	 DWORD PTR $T318301[ebp], 0
  000d5	74 42		 je	 SHORT $LN6@COrbitAspe
  000d7	8b 55 18	 mov	 edx, DWORD PTR _OrbitSize$[ebp]
  000da	f7 da		 neg	 edx
  000dc	89 55 d4	 mov	 DWORD PTR tv188[ebp], edx
  000df	db 45 d4	 fild	 DWORD PTR tv188[ebp]
  000e2	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@4000000000000000
  000e8	83 ec 08	 sub	 esp, 8
  000eb	dd 1c 24	 fstp	 QWORD PTR [esp]
  000ee	db 45 18	 fild	 DWORD PTR _OrbitSize$[ebp]
  000f1	83 ec 08	 sub	 esp, 8
  000f4	dd 1c 24	 fstp	 QWORD PTR [esp]
  000f7	8b 45 14	 mov	 eax, DWORD PTR _OrbitPeriodY$[ebp+4]
  000fa	50		 push	 eax
  000fb	8b 4d 10	 mov	 ecx, DWORD PTR _OrbitPeriodY$[ebp]
  000fe	51		 push	 ecx
  000ff	8b 15 a4 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+164
  00105	52		 push	 edx
  00106	a1 a0 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+160
  0010b	50		 push	 eax
  0010c	8b 4d e4	 mov	 ecx, DWORD PTR $T318301[ebp]
  0010f	e8 00 00 00 00	 call	 ??0CPeriodBouncer@@QAE@_J0NN@Z ; CPeriodBouncer::CPeriodBouncer
  00114	89 45 d0	 mov	 DWORD PTR tv153[ebp], eax
  00117	eb 07		 jmp	 SHORT $LN7@COrbitAspe
$LN6@COrbitAspe:
  00119	c7 45 d0 00 00
	00 00		 mov	 DWORD PTR tv153[ebp], 0
$LN7@COrbitAspe:
  00120	8b 4d d0	 mov	 ecx, DWORD PTR tv153[ebp]
  00123	89 4d e8	 mov	 DWORD PTR $T318300[ebp], ecx
  00126	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  0012a	6a 00		 push	 0
  0012c	8b 55 e8	 mov	 edx, DWORD PTR $T318300[ebp]
  0012f	52		 push	 edx
  00130	8b 4d e0	 mov	 ecx, DWORD PTR _this$[ebp]
  00133	83 c1 14	 add	 ecx, 20			; 00000014H
  00136	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCPeriodBouncer@@@@QAE@PAVCPeriodBouncer@@PAUCounter@@@Z ; SmartPtr<CPeriodBouncer>::SmartPtr<CPeriodBouncer>
  0013b	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4

; 182  :     if (AspectSettings.BounceStartTime == 0)

  0013f	a1 a0 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+160
  00144	0b 05 a4 00 00
	00		 or	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+164
  0014a	75 0d		 jne	 SHORT $LN1@COrbitAspe

; 183  :     {
; 184  :         time(&AspectSettings.BounceStartTime);

  0014c	68 a0 00 00 00	 push	 OFFSET ?AspectSettings@@3UTAspectSettings@@A+160
  00151	e8 00 00 00 00	 call	 _time
  00156	83 c4 04	 add	 esp, 4
$LN1@COrbitAspe:

; 185  :     }
; 186  : }

  00159	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00160	8b 45 e0	 mov	 eax, DWORD PTR _this$[ebp]
  00163	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00166	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0016d	59		 pop	 ecx
  0016e	8b e5		 mov	 esp, ebp
  00170	5d		 pop	 ebp
  00171	c2 14 00	 ret	 20			; 00000014H
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$0:
  00000	8b 4d e0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$1:
  00008	8b 45 ec	 mov	 eax, DWORD PTR $T318297[ebp]
  0000b	50		 push	 eax
  0000c	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00011	59		 pop	 ecx
  00012	c3		 ret	 0
__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$2:
  00013	8b 4d e0	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00019	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$3:
  0001e	8b 45 e4	 mov	 eax, DWORD PTR $T318301[ebp]
  00021	50		 push	 eax
  00022	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00027	59		 pop	 ecx
  00028	c3		 ret	 0
__unwindfunclet$??0COrbitAspectFilter@@QAE@_J0J@Z$4:
  00029	8b 4d e0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002c	83 c1 14	 add	 ecx, 20			; 00000014H
  0002f	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCPeriodBouncer@@@@QAE@XZ ; SmartPtr<CPeriodBouncer>::~SmartPtr<CPeriodBouncer>
__ehhandler$??0COrbitAspectFilter@@QAE@_J0J@Z:
  00034	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00038	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0003b	8b 4a d8	 mov	 ecx, DWORD PTR [edx-40]
  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$??0COrbitAspectFilter@@QAE@_J0J@Z
  0004a	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0COrbitAspectFilter@@QAE@_J0J@Z ENDP			; COrbitAspectFilter::COrbitAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CAnalogueBlankingFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CAnalogueBlankingFilter@@UAE@XZ$0
__ehfuncinfo$??1CAnalogueBlankingFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CAnalogueBlankingFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CAnalogueBlankingFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CAnalogueBlankingFilter@@UAE@XZ PROC			; CAnalogueBlankingFilter::~CAnalogueBlankingFilter, 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$??1CAnalogueBlankingFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1CAnalogueBlankingFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1CAnalogueBlankingFilter@@UAE@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$??1CAnalogueBlankingFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CAnalogueBlankingFilter@@UAE@XZ ENDP			; CAnalogueBlankingFilter::~CAnalogueBlankingFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCAnalogueBlankingFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCAnalogueBlankingFilter@@UAEPAXI@Z PROC		; CAnalogueBlankingFilter::`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	 ??1CAnalogueBlankingFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@86
  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@86:
  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
??_GCAnalogueBlankingFilter@@UAEPAXI@Z ENDP		; CAnalogueBlankingFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0CAnalogueBlankingFilter@@QAE@HH@Z		; CAnalogueBlankingFilter::CAnalogueBlankingFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CAnalogueBlankingFilter@@QAE@HH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CAnalogueBlankingFilter@@QAE@HH@Z$0
__ehfuncinfo$??0CAnalogueBlankingFilter@@QAE@HH@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CAnalogueBlankingFilter@@QAE@HH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CAnalogueBlankingFilter@@QAE@HH@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_SourceWidth$ = 8					; size = 4
_SourceHeight$ = 12					; size = 4
??0CAnalogueBlankingFilter@@QAE@HH@Z PROC		; CAnalogueBlankingFilter::CAnalogueBlankingFilter, COMDAT
; _this$ = ecx

; 132  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CAnalogueBlankingFilter@@QAE@HH@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	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CAnalogueBlankingFilter@@6B@

; 133  :     if(SourceHeight == 480)

  0003e	81 7d 0c e0 01
	00 00		 cmp	 DWORD PTR _SourceHeight$[ebp], 480 ; 000001e0H
  00045	75 3d		 jne	 SHORT $LN4@CAnalogueB

; 134  :     {
; 135  :         m_TopShift = 1;

  00047	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0004a	c7 41 0c 01 00
	00 00		 mov	 DWORD PTR [ecx+12], 1

; 136  :         m_BottomShift = 1;

  00051	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  00054	c7 42 10 01 00
	00 00		 mov	 DWORD PTR [edx+16], 1

; 137  :         m_LeftShift = SourceWidth * 2 / 720;

  0005b	8b 45 08	 mov	 eax, DWORD PTR _SourceWidth$[ebp]
  0005e	d1 e0		 shl	 eax, 1
  00060	99		 cdq
  00061	b9 d0 02 00 00	 mov	 ecx, 720		; 000002d0H
  00066	f7 f9		 idiv	 ecx
  00068	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  0006b	89 42 14	 mov	 DWORD PTR [edx+20], eax

; 138  :         m_RightShift = SourceWidth * 4 / 720;

  0006e	8b 45 08	 mov	 eax, DWORD PTR _SourceWidth$[ebp]
  00071	c1 e0 02	 shl	 eax, 2
  00074	99		 cdq
  00075	b9 d0 02 00 00	 mov	 ecx, 720		; 000002d0H
  0007a	f7 f9		 idiv	 ecx
  0007c	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  0007f	89 42 18	 mov	 DWORD PTR [edx+24], eax
  00082	eb 6f		 jmp	 SHORT $LN5@CAnalogueB
$LN4@CAnalogueB:

; 139  :     }
; 140  :     else if(SourceHeight == 576)

  00084	81 7d 0c 40 02
	00 00		 cmp	 DWORD PTR _SourceHeight$[ebp], 576 ; 00000240H
  0008b	75 3e		 jne	 SHORT $LN2@CAnalogueB

; 141  :     {
; 142  :         m_TopShift = 0;

  0008d	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00090	c7 40 0c 00 00
	00 00		 mov	 DWORD PTR [eax+12], 0

; 143  :         m_BottomShift = 2;

  00097	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0009a	c7 41 10 02 00
	00 00		 mov	 DWORD PTR [ecx+16], 2

; 144  :         m_LeftShift = SourceWidth * 8 / 720;

  000a1	8b 45 08	 mov	 eax, DWORD PTR _SourceWidth$[ebp]
  000a4	c1 e0 03	 shl	 eax, 3
  000a7	99		 cdq
  000a8	b9 d0 02 00 00	 mov	 ecx, 720		; 000002d0H
  000ad	f7 f9		 idiv	 ecx
  000af	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  000b2	89 42 14	 mov	 DWORD PTR [edx+20], eax

; 145  :         m_RightShift = SourceWidth * 10 / 720;

  000b5	8b 45 08	 mov	 eax, DWORD PTR _SourceWidth$[ebp]
  000b8	6b c0 0a	 imul	 eax, 10			; 0000000aH
  000bb	99		 cdq
  000bc	b9 d0 02 00 00	 mov	 ecx, 720		; 000002d0H
  000c1	f7 f9		 idiv	 ecx
  000c3	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  000c6	89 42 18	 mov	 DWORD PTR [edx+24], eax

; 146  :     }
; 147  :     else

  000c9	eb 28		 jmp	 SHORT $LN5@CAnalogueB
$LN2@CAnalogueB:

; 148  :     {
; 149  :         // do nothing to image if we're not an expected height
; 150  :         // since we are probably in a still or some other source
; 151  :         // were analogue blanking doesn't apply
; 152  :         m_TopShift = 0;

  000cb	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  000ce	c7 40 0c 00 00
	00 00		 mov	 DWORD PTR [eax+12], 0

; 153  :         m_BottomShift = 0;

  000d5	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  000d8	c7 41 10 00 00
	00 00		 mov	 DWORD PTR [ecx+16], 0

; 154  :         m_LeftShift = 0;

  000df	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  000e2	c7 42 14 00 00
	00 00		 mov	 DWORD PTR [edx+20], 0

; 155  :         m_RightShift = 0;

  000e9	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  000ec	c7 40 18 00 00
	00 00		 mov	 DWORD PTR [eax+24], 0
$LN5@CAnalogueB:

; 156  :     }
; 157  : }

  000f3	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000fa	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  000fd	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00100	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00107	59		 pop	 ecx
  00108	8b e5		 mov	 esp, ebp
  0010a	5d		 pop	 ebp
  0010b	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CAnalogueBlankingFilter@@QAE@HH@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0CAnalogueBlankingFilter@@QAE@HH@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$??0CAnalogueBlankingFilter@@QAE@HH@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CAnalogueBlankingFilter@@QAE@HH@Z ENDP		; CAnalogueBlankingFilter::CAnalogueBlankingFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1COverscanAspectFilter@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1COverscanAspectFilter@@UAE@XZ$0
__ehfuncinfo$??1COverscanAspectFilter@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1COverscanAspectFilter@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1COverscanAspectFilter@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1COverscanAspectFilter@@UAE@XZ PROC			; COverscanAspectFilter::~COverscanAspectFilter, 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$??1COverscanAspectFilter@@UAE@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	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
  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$??1COverscanAspectFilter@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??1COverscanAspectFilter@@UAE@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$??1COverscanAspectFilter@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1COverscanAspectFilter@@UAE@XZ ENDP			; COverscanAspectFilter::~COverscanAspectFilter
; Function compile flags: /Odtp
;	COMDAT ??_GCOverscanAspectFilter@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCOverscanAspectFilter@@UAEPAXI@Z PROC		; COverscanAspectFilter::`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	 ??1COverscanAspectFilter@@UAE@XZ
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@87
  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@87:
  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
??_GCOverscanAspectFilter@@UAEPAXI@Z ENDP		; COverscanAspectFilter::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0COverscanAspectFilter@@QAE@HHHH@Z		; COverscanAspectFilter::COverscanAspectFilter
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0COverscanAspectFilter@@QAE@HHHH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0COverscanAspectFilter@@QAE@HHHH@Z$0
__ehfuncinfo$??0COverscanAspectFilter@@QAE@HHHH@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0COverscanAspectFilter@@QAE@HHHH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0COverscanAspectFilter@@QAE@HHHH@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_TopOverscanSize$ = 8					; size = 4
_BottomOverscanSize$ = 12				; size = 4
_LeftOverscanSize$ = 16					; size = 4
_RightOverscanSize$ = 20				; size = 4
??0COverscanAspectFilter@@QAE@HHHH@Z PROC		; COverscanAspectFilter::COverscanAspectFilter, COMDAT
; _this$ = ecx

; 113  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0COverscanAspectFilter@@QAE@HHHH@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	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7COverscanAspectFilter@@6B@
  0003e	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00041	8b 55 08	 mov	 edx, DWORD PTR _TopOverscanSize$[ebp]
  00044	89 51 0c	 mov	 DWORD PTR [ecx+12], edx
  00047	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0004a	8b 4d 0c	 mov	 ecx, DWORD PTR _BottomOverscanSize$[ebp]
  0004d	89 48 10	 mov	 DWORD PTR [eax+16], ecx
  00050	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  00053	8b 45 10	 mov	 eax, DWORD PTR _LeftOverscanSize$[ebp]
  00056	89 42 14	 mov	 DWORD PTR [edx+20], eax
  00059	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0005c	8b 55 14	 mov	 edx, DWORD PTR _RightOverscanSize$[ebp]
  0005f	89 51 18	 mov	 DWORD PTR [ecx+24], edx

; 114  : }

  00062	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00069	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0006c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0006f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00076	59		 pop	 ecx
  00077	8b e5		 mov	 esp, ebp
  00079	5d		 pop	 ebp
  0007a	c2 10 00	 ret	 16			; 00000010H
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0COverscanAspectFilter@@QAE@HHHH@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__ehhandler$??0COverscanAspectFilter@@QAE@HHHH@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$??0COverscanAspectFilter@@QAE@HHHH@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0COverscanAspectFilter@@QAE@HHHH@Z ENDP		; COverscanAspectFilter::COverscanAspectFilter
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectrect.h
;	COMDAT ?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z
_TEXT	SEGMENT
tv95 = -12						; size = 4
_this$ = -8						; size = 4
_newWidth$ = -4						; size = 4
_ar$ = 8						; size = 8
?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z PROC	; CAspectRect::adjustSourceAspectByWidth, COMDAT
; _this$ = ecx

; 333  :     {

  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

; 334  :         int newWidth = (int)(ar*height()+.5);

  00009	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00011	89 45 f4	 mov	 DWORD PTR tv95[ebp], eax
  00014	db 45 f4	 fild	 DWORD PTR tv95[ebp]
  00017	dc 4d 08	 fmul	 QWORD PTR _ar$[ebp]
  0001a	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@3fe0000000000000
  00020	e8 00 00 00 00	 call	 __ftol2_sse
  00025	89 45 fc	 mov	 DWORD PTR _newWidth$[ebp], eax

; 335  :         left += ((width()-newWidth)/2);

  00028	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0002b	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00030	2b 45 fc	 sub	 eax, DWORD PTR _newWidth$[ebp]
  00033	99		 cdq
  00034	2b c2		 sub	 eax, edx
  00036	d1 f8		 sar	 eax, 1
  00038	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0003b	03 01		 add	 eax, DWORD PTR [ecx]
  0003d	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00040	89 02		 mov	 DWORD PTR [edx], eax

; 336  :         right = left + newWidth;

  00042	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00045	8b 08		 mov	 ecx, DWORD PTR [eax]
  00047	03 4d fc	 add	 ecx, DWORD PTR _newWidth$[ebp]
  0004a	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0004d	89 4a 08	 mov	 DWORD PTR [edx+8], ecx

; 337  :     }

  00050	8b e5		 mov	 esp, ebp
  00052	5d		 pop	 ebp
  00053	c2 08 00	 ret	 8
?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z ENDP	; CAspectRect::adjustSourceAspectByWidth
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z
_TEXT	SEGMENT
tv128 = -12						; size = 4
_this$ = -8						; size = 4
_newHeight$ = -4					; size = 4
_ar$ = 8						; size = 8
?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z PROC	; CAspectRect::adjustSourceAspectByHeight, COMDAT
; _this$ = ecx

; 323  :     {

  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

; 324  :         int newHeight = (int)(width()/ar+.5);

  00009	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00011	89 45 f4	 mov	 DWORD PTR tv128[ebp], eax
  00014	db 45 f4	 fild	 DWORD PTR tv128[ebp]
  00017	dc 75 08	 fdiv	 QWORD PTR _ar$[ebp]
  0001a	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@3fe0000000000000
  00020	e8 00 00 00 00	 call	 __ftol2_sse
  00025	89 45 fc	 mov	 DWORD PTR _newHeight$[ebp], eax

; 325  :         top += ((height()-newHeight)/2);

  00028	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0002b	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00030	2b 45 fc	 sub	 eax, DWORD PTR _newHeight$[ebp]
  00033	99		 cdq
  00034	2b c2		 sub	 eax, edx
  00036	d1 f8		 sar	 eax, 1
  00038	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0003b	03 41 04	 add	 eax, DWORD PTR [ecx+4]
  0003e	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00041	89 42 04	 mov	 DWORD PTR [edx+4], eax

; 326  :         bottom = top + newHeight;

  00044	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00047	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  0004a	03 4d fc	 add	 ecx, DWORD PTR _newHeight$[ebp]
  0004d	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00050	89 4a 0c	 mov	 DWORD PTR [edx+12], ecx

; 327  :     }

  00053	8b e5		 mov	 esp, ebp
  00055	5d		 pop	 ebp
  00056	c2 08 00	 ret	 8
?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z ENDP	; CAspectRect::adjustSourceAspectByHeight
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?crop@CAspectRect@@QAEXUtagRECT@@PAV1@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_cropToRect$ = 8					; size = 16
_r2$ = 24						; size = 4
?crop@CAspectRect@@QAEXUtagRECT@@PAV1@@Z PROC		; CAspectRect::crop, COMDAT
; _this$ = ecx

; 198  :     {

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

; 199  :         if (width() > 0)

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  0000f	85 c0		 test	 eax, eax
  00011	0f 8e 8f 00 00
	00		 jle	 $LN10@crop

; 200  :         {
; 201  :             if (left < cropToRect.left)

  00017	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001a	8b 08		 mov	 ecx, DWORD PTR [eax]
  0001c	3b 4d 08	 cmp	 ecx, DWORD PTR _cropToRect$[ebp]
  0001f	7d 3b		 jge	 SHORT $LN9@crop

; 202  :             {
; 203  :                 if (r2)

  00021	83 7d 18 00	 cmp	 DWORD PTR _r2$[ebp], 0
  00025	74 2d		 je	 SHORT $LN8@crop

; 204  :                 {
; 205  :                     r2->left -= MulDiv(left-cropToRect.left, r2->width(),width());

  00027	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0002a	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  0002f	50		 push	 eax
  00030	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  00033	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00038	50		 push	 eax
  00039	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0003c	8b 02		 mov	 eax, DWORD PTR [edx]
  0003e	2b 45 08	 sub	 eax, DWORD PTR _cropToRect$[ebp]
  00041	50		 push	 eax
  00042	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__MulDiv@12
  00048	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  0004b	8b 11		 mov	 edx, DWORD PTR [ecx]
  0004d	2b d0		 sub	 edx, eax
  0004f	8b 45 18	 mov	 eax, DWORD PTR _r2$[ebp]
  00052	89 10		 mov	 DWORD PTR [eax], edx
$LN8@crop:

; 206  :                 }
; 207  :                 left = cropToRect.left;

  00054	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00057	8b 55 08	 mov	 edx, DWORD PTR _cropToRect$[ebp]
  0005a	89 11		 mov	 DWORD PTR [ecx], edx
$LN9@crop:

; 208  :             }
; 209  :             if (right > cropToRect.right)

  0005c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0005f	8b 48 08	 mov	 ecx, DWORD PTR [eax+8]
  00062	3b 4d 10	 cmp	 ecx, DWORD PTR _cropToRect$[ebp+8]
  00065	7e 3f		 jle	 SHORT $LN10@crop

; 210  :             {
; 211  :                 if (r2)

  00067	83 7d 18 00	 cmp	 DWORD PTR _r2$[ebp], 0
  0006b	74 30		 je	 SHORT $LN6@crop

; 212  :                 {
; 213  :                     r2->right -= MulDiv(right - cropToRect.right,r2->width(),width());

  0006d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00070	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00075	50		 push	 eax
  00076	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  00079	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  0007e	50		 push	 eax
  0007f	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00082	8b 42 08	 mov	 eax, DWORD PTR [edx+8]
  00085	2b 45 10	 sub	 eax, DWORD PTR _cropToRect$[ebp+8]
  00088	50		 push	 eax
  00089	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__MulDiv@12
  0008f	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  00092	8b 51 08	 mov	 edx, DWORD PTR [ecx+8]
  00095	2b d0		 sub	 edx, eax
  00097	8b 45 18	 mov	 eax, DWORD PTR _r2$[ebp]
  0009a	89 50 08	 mov	 DWORD PTR [eax+8], edx
$LN6@crop:

; 214  :                 }
; 215  :                 right = cropToRect.right;

  0009d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000a0	8b 55 10	 mov	 edx, DWORD PTR _cropToRect$[ebp+8]
  000a3	89 51 08	 mov	 DWORD PTR [ecx+8], edx
$LN10@crop:

; 216  :             }
; 217  :         }
; 218  :         if (height() > 0)

  000a6	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000a9	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  000ae	85 c0		 test	 eax, eax
  000b0	0f 8e 94 00 00
	00		 jle	 $LN11@crop

; 219  :         {
; 220  :             if (top < cropToRect.top)

  000b6	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  000b9	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  000bc	3b 4d 0c	 cmp	 ecx, DWORD PTR _cropToRect$[ebp+4]
  000bf	7d 3f		 jge	 SHORT $LN4@crop

; 221  :             {
; 222  :                 if (r2)

  000c1	83 7d 18 00	 cmp	 DWORD PTR _r2$[ebp], 0
  000c5	74 30		 je	 SHORT $LN3@crop

; 223  :                 {
; 224  :                     r2->top -= MulDiv(top-cropToRect.top, r2->height(),height());

  000c7	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000ca	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  000cf	50		 push	 eax
  000d0	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  000d3	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  000d8	50		 push	 eax
  000d9	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  000dc	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  000df	2b 45 0c	 sub	 eax, DWORD PTR _cropToRect$[ebp+4]
  000e2	50		 push	 eax
  000e3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__MulDiv@12
  000e9	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  000ec	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  000ef	2b d0		 sub	 edx, eax
  000f1	8b 45 18	 mov	 eax, DWORD PTR _r2$[ebp]
  000f4	89 50 04	 mov	 DWORD PTR [eax+4], edx
$LN3@crop:

; 225  :                 }
; 226  :                 top = cropToRect.top;

  000f7	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000fa	8b 55 0c	 mov	 edx, DWORD PTR _cropToRect$[ebp+4]
  000fd	89 51 04	 mov	 DWORD PTR [ecx+4], edx
$LN4@crop:

; 227  :             }
; 228  :             if (bottom > cropToRect.bottom)

  00100	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00103	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00106	3b 4d 14	 cmp	 ecx, DWORD PTR _cropToRect$[ebp+12]
  00109	7e 3f		 jle	 SHORT $LN11@crop

; 229  :             {
; 230  :                 if (r2)

  0010b	83 7d 18 00	 cmp	 DWORD PTR _r2$[ebp], 0
  0010f	74 30		 je	 SHORT $LN1@crop

; 231  :                 {
; 232  :                     r2->bottom -= MulDiv(bottom - cropToRect.bottom,r2->height(),height());

  00111	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00114	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00119	50		 push	 eax
  0011a	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  0011d	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00122	50		 push	 eax
  00123	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00126	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  00129	2b 45 14	 sub	 eax, DWORD PTR _cropToRect$[ebp+12]
  0012c	50		 push	 eax
  0012d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__MulDiv@12
  00133	8b 4d 18	 mov	 ecx, DWORD PTR _r2$[ebp]
  00136	8b 51 0c	 mov	 edx, DWORD PTR [ecx+12]
  00139	2b d0		 sub	 edx, eax
  0013b	8b 45 18	 mov	 eax, DWORD PTR _r2$[ebp]
  0013e	89 50 0c	 mov	 DWORD PTR [eax+12], edx
$LN1@crop:

; 233  :                 }
; 234  :                 bottom = cropToRect.bottom;

  00141	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00144	8b 55 14	 mov	 edx, DWORD PTR _cropToRect$[ebp+12]
  00147	89 51 0c	 mov	 DWORD PTR [ecx+12], edx
$LN11@crop:

; 235  :             }
; 236  :         }
; 237  :     }

  0014a	8b e5		 mov	 esp, ebp
  0014c	5d		 pop	 ebp
  0014d	c2 14 00	 ret	 20			; 00000014H
?crop@CAspectRect@@QAEXUtagRECT@@PAV1@@Z ENDP		; CAspectRect::crop
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?enforceMinSize@CAspectRect@@QAEXHH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_x$ = 8							; size = 4
_y$ = 12						; size = 4
?enforceMinSize@CAspectRect@@QAEXHH@Z PROC		; CAspectRect::enforceMinSize, COMDAT
; _this$ = ecx

; 174  :     {

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

; 175  :         normalizeRect(); // Need a normalized rectangle

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?normalizeRect@CAspectRect@@QAEXXZ ; CAspectRect::normalizeRect

; 176  :         if (width() < x)

  0000f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00012	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00017	3b 45 08	 cmp	 eax, DWORD PTR _x$[ebp]
  0001a	7d 0e		 jge	 SHORT $LN2@enforceMin

; 177  :         {
; 178  :             right = left + x;

  0001c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001f	8b 08		 mov	 ecx, DWORD PTR [eax]
  00021	03 4d 08	 add	 ecx, DWORD PTR _x$[ebp]
  00024	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00027	89 4a 08	 mov	 DWORD PTR [edx+8], ecx
$LN2@enforceMin:

; 179  :         }
; 180  :         if (height() < y)

  0002a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00032	3b 45 0c	 cmp	 eax, DWORD PTR _y$[ebp]
  00035	7d 0f		 jge	 SHORT $LN3@enforceMin

; 181  :         {
; 182  :             bottom = top + y;

  00037	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0003a	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  0003d	03 4d 0c	 add	 ecx, DWORD PTR _y$[ebp]
  00040	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00043	89 4a 0c	 mov	 DWORD PTR [edx+12], ecx
$LN3@enforceMin:

; 183  :         }
; 184  :     }

  00046	8b e5		 mov	 esp, ebp
  00048	5d		 pop	 ebp
  00049	c2 08 00	 ret	 8
?enforceMinSize@CAspectRect@@QAEXHH@Z ENDP		; CAspectRect::enforceMinSize
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?enforceMinSize@CAspectRect@@QAEXH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_n$ = 8							; size = 4
?enforceMinSize@CAspectRect@@QAEXH@Z PROC		; CAspectRect::enforceMinSize, COMDAT
; _this$ = ecx

; 170  :     {

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

; 171  :         enforceMinSize(n,n);

  00007	8b 45 08	 mov	 eax, DWORD PTR _n$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 08	 mov	 ecx, DWORD PTR _n$[ebp]
  0000e	51		 push	 ecx
  0000f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00012	e8 00 00 00 00	 call	 ?enforceMinSize@CAspectRect@@QAEXHH@Z ; CAspectRect::enforceMinSize

; 172  :     }

  00017	8b e5		 mov	 esp, ebp
  00019	5d		 pop	 ebp
  0001a	c2 04 00	 ret	 4
?enforceMinSize@CAspectRect@@QAEXH@Z ENDP		; CAspectRect::enforceMinSize
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?shrink@CAspectRect@@QAEXHHHH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_l$ = 8							; size = 4
_r$ = 12						; size = 4
_t$ = 16						; size = 4
_b$ = 20						; size = 4
?shrink@CAspectRect@@QAEXHHHH@Z PROC			; CAspectRect::shrink, COMDAT
; _this$ = ecx

; 162  :     {

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

; 163  :         normalizeRect(); // Need a normalized rectangle

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?normalizeRect@CAspectRect@@QAEXXZ ; CAspectRect::normalizeRect

; 164  :         left += l; right -= r;

  0000f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00012	8b 08		 mov	 ecx, DWORD PTR [eax]
  00014	03 4d 08	 add	 ecx, DWORD PTR _l$[ebp]
  00017	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0001a	89 0a		 mov	 DWORD PTR [edx], ecx
  0001c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001f	8b 48 08	 mov	 ecx, DWORD PTR [eax+8]
  00022	2b 4d 0c	 sub	 ecx, DWORD PTR _r$[ebp]
  00025	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00028	89 4a 08	 mov	 DWORD PTR [edx+8], ecx

; 165  :         top += t; bottom -= b;

  0002b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0002e	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  00031	03 4d 10	 add	 ecx, DWORD PTR _t$[ebp]
  00034	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00037	89 4a 04	 mov	 DWORD PTR [edx+4], ecx
  0003a	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0003d	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00040	2b 4d 14	 sub	 ecx, DWORD PTR _b$[ebp]
  00043	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00046	89 4a 0c	 mov	 DWORD PTR [edx+12], ecx

; 166  :     }

  00049	8b e5		 mov	 esp, ebp
  0004b	5d		 pop	 ebp
  0004c	c2 10 00	 ret	 16			; 00000010H
?shrink@CAspectRect@@QAEXHHHH@Z ENDP			; CAspectRect::shrink
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?align@CAspectRect@@QAEXHHHH@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
_i$ = -4						; size = 4
_l$ = 8							; size = 4
_r$ = 12						; size = 4
_t$ = 16						; size = 4
_b$ = 20						; size = 4
?align@CAspectRect@@QAEXHHHH@Z PROC			; CAspectRect::align, COMDAT
; _this$ = ecx

; 134  :     {

  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

; 135  :         normalizeRect(); // Need a normalized rectangle

  00009	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?normalizeRect@CAspectRect@@QAEXXZ ; CAspectRect::normalizeRect

; 136  :         int i = left % l;

  00011	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00014	8b 00		 mov	 eax, DWORD PTR [eax]
  00016	99		 cdq
  00017	f7 7d 08	 idiv	 DWORD PTR _l$[ebp]
  0001a	89 55 fc	 mov	 DWORD PTR _i$[ebp], edx

; 137  :         if (i > 0)

  0001d	83 7d fc 00	 cmp	 DWORD PTR _i$[ebp], 0
  00021	7e 10		 jle	 SHORT $LN2@align

; 138  :         {
; 139  :             left += l-i;

  00023	8b 4d 08	 mov	 ecx, DWORD PTR _l$[ebp]
  00026	2b 4d fc	 sub	 ecx, DWORD PTR _i$[ebp]
  00029	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0002c	03 0a		 add	 ecx, DWORD PTR [edx]
  0002e	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00031	89 08		 mov	 DWORD PTR [eax], ecx
$LN2@align:

; 140  :         }
; 141  :         right -= right % r;

  00033	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00036	8b 41 08	 mov	 eax, DWORD PTR [ecx+8]
  00039	99		 cdq
  0003a	f7 7d 0c	 idiv	 DWORD PTR _r$[ebp]
  0003d	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00040	8b 48 08	 mov	 ecx, DWORD PTR [eax+8]
  00043	2b ca		 sub	 ecx, edx
  00045	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00048	89 4a 08	 mov	 DWORD PTR [edx+8], ecx

; 142  :         top += top % t;

  0004b	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0004e	8b 40 04	 mov	 eax, DWORD PTR [eax+4]
  00051	99		 cdq
  00052	f7 7d 10	 idiv	 DWORD PTR _t$[ebp]
  00055	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00058	03 51 04	 add	 edx, DWORD PTR [ecx+4]
  0005b	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0005e	89 50 04	 mov	 DWORD PTR [eax+4], edx

; 143  :         i = top % t;

  00061	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00064	8b 41 04	 mov	 eax, DWORD PTR [ecx+4]
  00067	99		 cdq
  00068	f7 7d 10	 idiv	 DWORD PTR _t$[ebp]
  0006b	89 55 fc	 mov	 DWORD PTR _i$[ebp], edx

; 144  :         if (i > 0)

  0006e	83 7d fc 00	 cmp	 DWORD PTR _i$[ebp], 0
  00072	7e 12		 jle	 SHORT $LN1@align

; 145  :         {
; 146  :             top += t-i;

  00074	8b 55 10	 mov	 edx, DWORD PTR _t$[ebp]
  00077	2b 55 fc	 sub	 edx, DWORD PTR _i$[ebp]
  0007a	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0007d	03 50 04	 add	 edx, DWORD PTR [eax+4]
  00080	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00083	89 51 04	 mov	 DWORD PTR [ecx+4], edx
$LN1@align:

; 147  :         }
; 148  :         bottom -= bottom % b;

  00086	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00089	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  0008c	99		 cdq
  0008d	f7 7d 14	 idiv	 DWORD PTR _b$[ebp]
  00090	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00093	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00096	2b ca		 sub	 ecx, edx
  00098	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0009b	89 4a 0c	 mov	 DWORD PTR [edx+12], ecx

; 149  :     }

  0009e	8b e5		 mov	 esp, ebp
  000a0	5d		 pop	 ebp
  000a1	c2 10 00	 ret	 16			; 00000010H
?align@CAspectRect@@QAEXHHHH@Z ENDP			; CAspectRect::align
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?align@CAspectRect@@QAEXH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_n$ = 8							; size = 4
?align@CAspectRect@@QAEXH@Z PROC			; CAspectRect::align, COMDAT
; _this$ = ecx

; 126  :     {

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

; 127  :         align(n,n,n,n);

  00007	8b 45 08	 mov	 eax, DWORD PTR _n$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 08	 mov	 ecx, DWORD PTR _n$[ebp]
  0000e	51		 push	 ecx
  0000f	8b 55 08	 mov	 edx, DWORD PTR _n$[ebp]
  00012	52		 push	 edx
  00013	8b 45 08	 mov	 eax, DWORD PTR _n$[ebp]
  00016	50		 push	 eax
  00017	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001a	e8 00 00 00 00	 call	 ?align@CAspectRect@@QAEXHHHH@Z ; CAspectRect::align

; 128  :     }

  0001f	8b e5		 mov	 esp, ebp
  00021	5d		 pop	 ebp
  00022	c2 04 00	 ret	 4
?align@CAspectRect@@QAEXH@Z ENDP			; CAspectRect::align
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?sourceAspect@CAspectRect@@QAENXZ
_TEXT	SEGMENT
tv77 = -20						; size = 4
tv84 = -16						; size = 8
tv75 = -8						; size = 4
_this$ = -4						; size = 4
?sourceAspect@CAspectRect@@QAENXZ PROC			; CAspectRect::sourceAspect, COMDAT
; _this$ = ecx

; 88   :     {

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

; 89   :         return RoundTo3dp((double)width()/(double)height());

  00009	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00011	89 45 f8	 mov	 DWORD PTR tv75[ebp], eax
  00014	db 45 f8	 fild	 DWORD PTR tv75[ebp]
  00017	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001a	dd 5d f0	 fstp	 QWORD PTR tv84[ebp]
  0001d	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00022	89 45 ec	 mov	 DWORD PTR tv77[ebp], eax
  00025	db 45 ec	 fild	 DWORD PTR tv77[ebp]
  00028	dc 7d f0	 fdivr	 QWORD PTR tv84[ebp]
  0002b	83 ec 08	 sub	 esp, 8
  0002e	dd 1c 24	 fstp	 QWORD PTR [esp]
  00031	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	e8 00 00 00 00	 call	 ?RoundTo3dp@CAspectRect@@QAENN@Z ; CAspectRect::RoundTo3dp

; 90   :     }

  00039	8b e5		 mov	 esp, ebp
  0003b	5d		 pop	 ebp
  0003c	c3		 ret	 0
?sourceAspect@CAspectRect@@QAENXZ ENDP			; CAspectRect::sourceAspect
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
;	COMDAT ?what@logic_error@std@@UBEPBDXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?what@logic_error@std@@UBEPBDXZ PROC			; std::logic_error::what, COMDAT
; _this$ = ecx

; 34   : 		{	// return pointer to message string

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

; 35   : 		return (_Str.c_str());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000d	e8 00 00 00 00	 call	 ?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::c_str

; 36   : 		}

  00012	8b e5		 mov	 esp, ebp
  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
?what@logic_error@std@@UBEPBDXZ ENDP			; std::logic_error::what
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z
_TEXT	SEGMENT
$T324677 = -1						; size = 1
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z PROC ; std::_Traits_helper::copy_s<std::char_traits<char> >, COMDAT

; 588  : 	{

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

; 589  : 		return copy_s<_Traits>(_First1, _Size, _First2, _Count, _Char_traits_cat<_Traits>());

  00004	e8 00 00 00 00	 call	 ??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ ; std::_Char_traits_cat<std::char_traits<char> >
  00009	88 45 ff	 mov	 BYTE PTR $T324677[ebp], al
  0000c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T324677[ebp]
  00010	50		 push	 eax
  00011	8b 4d 14	 mov	 ecx, DWORD PTR __Count$[ebp]
  00014	51		 push	 ecx
  00015	8b 55 10	 mov	 edx, DWORD PTR __First2$[ebp]
  00018	52		 push	 edx
  00019	8b 45 0c	 mov	 eax, DWORD PTR __Size$[ebp]
  0001c	50		 push	 eax
  0001d	8b 4d 08	 mov	 ecx, DWORD PTR __First1$[ebp]
  00020	51		 push	 ecx
  00021	e8 00 00 00 00	 call	 ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
  00026	83 c4 14	 add	 esp, 20			; 00000014H

; 590  : 	}

  00029	8b e5		 mov	 esp, ebp
  0002b	5d		 pop	 ebp
  0002c	c3		 ret	 0
??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ENDP ; std::_Traits_helper::copy_s<std::char_traits<char> >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory
_TEXT	ENDS
;	COMDAT ?allocate@?$allocator@D@std@@QAEPADI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Count$ = 8						; size = 4
?allocate@?$allocator@D@std@@QAEPADI@Z PROC		; std::allocator<char>::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@D@std@@YAPADIPAD@Z ; std::_Allocate<char>
  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@D@std@@QAEPADI@Z ENDP		; std::allocator<char>::allocate
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd
_TEXT	ENDS
;	COMDAT ??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z
_TEXT	SEGMENT
$T324682 = -1						; size = 1
__First1$ = 8						; size = 4
__Size$ = 12						; size = 4
__First2$ = 16						; size = 4
__Count$ = 20						; size = 4
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z PROC ; std::_Traits_helper::move_s<std::char_traits<char> >, COMDAT

; 615  : 	{

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

; 616  : 		return move_s<_Traits>(_First1, _Size, _First2, _Count, _Char_traits_cat<_Traits>());

  00004	e8 00 00 00 00	 call	 ??$_Char_traits_cat@U?$char_traits@D@std@@@std@@YA?AU_Secure_char_traits_tag@0@XZ ; std::_Char_traits_cat<std::char_traits<char> >
  00009	88 45 ff	 mov	 BYTE PTR $T324682[ebp], al
  0000c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T324682[ebp]
  00010	50		 push	 eax
  00011	8b 4d 14	 mov	 ecx, DWORD PTR __Count$[ebp]
  00014	51		 push	 ecx
  00015	8b 55 10	 mov	 edx, DWORD PTR __First2$[ebp]
  00018	52		 push	 edx
  00019	8b 45 0c	 mov	 eax, DWORD PTR __Size$[ebp]
  0001c	50		 push	 eax
  0001d	8b 4d 08	 mov	 ecx, DWORD PTR __First1$[ebp]
  00020	51		 push	 ecx
  00021	e8 00 00 00 00	 call	 ??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDIU_Secure_char_traits_tag@1@@Z ; std::_Traits_helper::move_s<std::char_traits<char> >
  00026	83 c4 14	 add	 esp, 20			; 00000014H

; 617  : 	}

  00029	8b e5		 mov	 esp, ebp
  0002b	5d		 pop	 ebp
  0002c	c3		 ret	 0
??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ENDP ; std::_Traits_helper::move_s<std::char_traits<char> >
_TEXT	ENDS
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\memory
xdata$x	SEGMENT
__unwindtable$??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$0
__tryblocktable$??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$2
__ehfuncinfo$??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z
	DD	01H
	DD	FLAT:__tryblocktable$??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Uninit_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@34
$LN5@Uninit_cop@34:
  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@34:
  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@34

; 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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@ABV3@@Z ; std::allocator<SmartPtr<CAspectFilter> >::construct
  00063	eb d4		 jmp	 SHORT $LN5@Uninit_cop@34
$LN4@Uninit_cop@34:
  00065	eb 37		 jmp	 SHORT $LN10@Uninit_cop@34
__catch$??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@34
$LN2@Uninit_cop@34:
  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@34:
  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@34

; 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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::allocator<SmartPtr<CAspectFilter> >::destroy
  00086	eb e1		 jmp	 SHORT $LN2@Uninit_cop@34
$LN1@Uninit_cop@34:

; 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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z$1
  0009d	c3		 ret	 0
$LN10@Uninit_cop@34:
  0009e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
__tryend$??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@34:

; 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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Uninit_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
;	COMDAT ??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z
_TEXT	SEGMENT
$T324701 = -2						; size = 1
$T324700 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
__Al$ = 20						; size = 4
??$unchecked_uninitialized_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z PROC ; stdext::unchecked_uninitialized_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >, 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 $T324700[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@VCAspectFilter@@@@PAV1@@std@@YA?AU_Nonscalar_ptr_iterator_tag@0@AAPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::_Ptr_cat<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
  00016	83 c4 08	 add	 esp, 8
  00019	88 45 fe	 mov	 BYTE PTR $T324701[ebp], al
  0001c	0f b6 45 ff	 movzx	 eax, BYTE PTR $T324700[ebp]
  00020	50		 push	 eax
  00021	0f b6 4d fe	 movzx	 ecx, BYTE PTR $T324701[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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  00044	83 c4 04	 add	 esp, 4
  00047	50		 push	 eax
  00048	e8 00 00 00 00	 call	 ??$_Uninit_copy@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Nonscalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ENDP ; stdext::unchecked_uninitialized_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Uninit_move@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z PROC ; std::_Uninit_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> >,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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ; stdext::unchecked_uninitialized_copy<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
  00018	83 c4 10	 add	 esp, 16			; 00000010H

; 206  : 	}

  0001b	5d		 pop	 ebp
  0001c	c3		 ret	 0
??$_Uninit_move@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ENDP ; std::_Uninit_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> >,std::_Undefined_move_tag>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z
_TEXT	SEGMENT
$T324707 = -2						; size = 1
$T324706 = -1						; size = 1
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Dest$ = 16						; size = 4
__Al$ = 20						; size = 4
??$_Unchecked_uninitialized_move@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z PROC ; stdext::_Unchecked_uninitialized_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >, 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 $T324706[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@VCAspectFilter@@@@@std@@YA?AU_Undefined_move_tag@0@ABQAV?$SmartPtr@VCAspectFilter@@@@@Z ; std::_Move_cat<SmartPtr<CAspectFilter> *>
  00012	83 c4 04	 add	 esp, 4
  00015	88 45 fe	 mov	 BYTE PTR $T324707[ebp], al
  00018	0f b6 55 ff	 movzx	 edx, BYTE PTR $T324706[ebp]
  0001c	52		 push	 edx
  0001d	0f b6 45 fe	 movzx	 eax, BYTE PTR $T324707[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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  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@VCAspectFilter@@@@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@AAPAV1@@Z ; std::_Checked_base<SmartPtr<CAspectFilter> *>
  00040	83 c4 04	 add	 esp, 4
  00043	50		 push	 eax
  00044	e8 00 00 00 00	 call	 ??$_Uninit_move@PAV?$SmartPtr@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@U_Undefined_move_tag@3@@std@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@0@U_Undefined_move_tag@0@U_Range_checked_iterator_tag@0@@Z ; std::_Uninit_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> >,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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ENDP ; stdext::_Unchecked_uninitialized_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
_TEXT	ENDS
;	COMDAT ??$_Umove@PAV?$SmartPtr@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__First$ = 8						; size = 4
__Last$ = 12						; size = 4
__Ptr$ = 16						; size = 4
??$_Umove@PAV?$SmartPtr@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Umove<SmartPtr<CAspectFilter> *>, 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@VCAspectFilter@@@@PAV1@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00AAV?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@Z ; stdext::_Unchecked_uninitialized_move<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *,std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Umove<SmartPtr<CAspectFilter> *>
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectfilters.cpp
_TEXT	ENDS
;	COMDAT ?adjustAspect@CScreenSanityAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
_this$ = -36						; size = 4
_screenRect$ = -32					; size = 16
_sourceRect$ = -16					; size = 16
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CScreenSanityAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CScreenSanityAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 516  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 24	 sub	 esp, 36			; 00000024H
  00006	56		 push	 esi
  00007	89 4d dc	 mov	 DWORD PTR _this$[ebp], ecx

; 517  :     // crop the Destination rect so that the overlay destination region is
; 518  :     // always on the screen we will also update the source area to reflect this
; 519  :     // so that we see the appropriate portion on the screen
; 520  :     // (this should make us compatable with YXY)
; 521  :     RECT screenRect;
; 522  :     if (GetSystemMetrics(SM_CXVIRTUALSCREEN) == 0 || GetSystemMetrics(SM_CYVIRTUALSCREEN) == 0)

  0000a	6a 4e		 push	 78			; 0000004eH
  0000c	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  00011	85 c0		 test	 eax, eax
  00013	74 0b		 je	 SHORT $LN4@adjustAspe@3
  00015	6a 4f		 push	 79			; 0000004fH
  00017	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  0001c	85 c0		 test	 eax, eax
  0001e	75 24		 jne	 SHORT $LN5@adjustAspe@3
$LN4@adjustAspe@3:

; 523  :     {
; 524  :         screenRect.top = 0;

  00020	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR _screenRect$[ebp+4], 0

; 525  :         screenRect.bottom = GetSystemMetrics(SM_CYSCREEN);

  00027	6a 01		 push	 1
  00029	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  0002e	89 45 ec	 mov	 DWORD PTR _screenRect$[ebp+12], eax

; 526  :         screenRect.left = 0;

  00031	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR _screenRect$[ebp], 0

; 527  :         screenRect.right = GetSystemMetrics(SM_CXSCREEN);

  00038	6a 00		 push	 0
  0003a	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  0003f	89 45 e8	 mov	 DWORD PTR _screenRect$[ebp+8], eax

; 528  :     }
; 529  :     else

  00042	eb 3e		 jmp	 SHORT $LN3@adjustAspe@3
$LN5@adjustAspe@3:

; 530  :     {
; 531  :         screenRect.top = GetSystemMetrics(SM_YVIRTUALSCREEN);

  00044	6a 4d		 push	 77			; 0000004dH
  00046	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  0004b	89 45 e4	 mov	 DWORD PTR _screenRect$[ebp+4], eax

; 532  :         screenRect.bottom = GetSystemMetrics(SM_YVIRTUALSCREEN)+GetSystemMetrics(SM_CYVIRTUALSCREEN);

  0004e	6a 4d		 push	 77			; 0000004dH
  00050	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  00055	8b f0		 mov	 esi, eax
  00057	6a 4f		 push	 79			; 0000004fH
  00059	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  0005e	03 f0		 add	 esi, eax
  00060	89 75 ec	 mov	 DWORD PTR _screenRect$[ebp+12], esi

; 533  :         screenRect.left = GetSystemMetrics(SM_XVIRTUALSCREEN);

  00063	6a 4c		 push	 76			; 0000004cH
  00065	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  0006a	89 45 e0	 mov	 DWORD PTR _screenRect$[ebp], eax

; 534  :         screenRect.right = GetSystemMetrics(SM_XVIRTUALSCREEN)+GetSystemMetrics(SM_CXVIRTUALSCREEN);

  0006d	6a 4c		 push	 76			; 0000004cH
  0006f	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  00074	8b f0		 mov	 esi, eax
  00076	6a 4e		 push	 78			; 0000004eH
  00078	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  0007d	03 f0		 add	 esi, eax
  0007f	89 75 e8	 mov	 DWORD PTR _screenRect$[ebp+8], esi
$LN3@adjustAspe@3:

; 535  :     }
; 536  :     RECT sourceRect = {0, 0, m_SrcWidth, m_SrcHeight};

  00082	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR _sourceRect$[ebp], 0
  00089	c7 45 f4 00 00
	00 00		 mov	 DWORD PTR _sourceRect$[ebp+4], 0
  00090	8b 45 dc	 mov	 eax, DWORD PTR _this$[ebp]
  00093	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00096	89 4d f8	 mov	 DWORD PTR _sourceRect$[ebp+8], ecx
  00099	8b 55 dc	 mov	 edx, DWORD PTR _this$[ebp]
  0009c	8b 42 10	 mov	 eax, DWORD PTR [edx+16]
  0009f	89 45 fc	 mov	 DWORD PTR _sourceRect$[ebp+12], eax

; 537  : 
; 538  :     ar.m_CurrentOverlayDestRect.crop(screenRect,&ar.m_CurrentOverlaySrcRect);

  000a2	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000a5	83 c1 68	 add	 ecx, 104		; 00000068H
  000a8	51		 push	 ecx
  000a9	83 ec 10	 sub	 esp, 16			; 00000010H
  000ac	8b d4		 mov	 edx, esp
  000ae	8b 45 e0	 mov	 eax, DWORD PTR _screenRect$[ebp]
  000b1	89 02		 mov	 DWORD PTR [edx], eax
  000b3	8b 4d e4	 mov	 ecx, DWORD PTR _screenRect$[ebp+4]
  000b6	89 4a 04	 mov	 DWORD PTR [edx+4], ecx
  000b9	8b 45 e8	 mov	 eax, DWORD PTR _screenRect$[ebp+8]
  000bc	89 42 08	 mov	 DWORD PTR [edx+8], eax
  000bf	8b 4d ec	 mov	 ecx, DWORD PTR _screenRect$[ebp+12]
  000c2	89 4a 0c	 mov	 DWORD PTR [edx+12], ecx
  000c5	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000c8	83 c1 50	 add	 ecx, 80			; 00000050H
  000cb	e8 00 00 00 00	 call	 ?crop@CAspectRect@@QAEXUtagRECT@@PAV1@@Z ; CAspectRect::crop

; 539  : 
; 540  :     // then make sure we are still onscreen
; 541  :     ar.m_CurrentOverlayDestRect.cropToFitRect(screenRect);

  000d0	8d 55 e0	 lea	 edx, DWORD PTR _screenRect$[ebp]
  000d3	52		 push	 edx
  000d4	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000d7	83 c1 50	 add	 ecx, 80			; 00000050H
  000da	e8 00 00 00 00	 call	 ?cropToFitRect@CAspectRect@@QAEXABUtagRECT@@@Z ; CAspectRect::cropToFitRect

; 542  : 
; 543  :     // then make sure we are still onscreen
; 544  :     ar.m_CurrentOverlaySrcRect.cropToFitRect(sourceRect);

  000df	8d 45 f0	 lea	 eax, DWORD PTR _sourceRect$[ebp]
  000e2	50		 push	 eax
  000e3	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000e6	83 c1 68	 add	 ecx, 104		; 00000068H
  000e9	e8 00 00 00 00	 call	 ?cropToFitRect@CAspectRect@@QAEXABUtagRECT@@@Z ; CAspectRect::cropToFitRect

; 545  : 
; 546  :     // make sure that any alignment restrictions are taken care of
; 547  :     if (GetActiveOutput()->GetSrcSizeAlign() > 1)

  000ee	e8 00 00 00 00	 call	 ?GetActiveOutput@@YAPAVIOutput@@XZ ; GetActiveOutput
  000f3	8b c8		 mov	 ecx, eax
  000f5	e8 00 00 00 00	 call	 ?GetSrcSizeAlign@IOutput@@QBEKXZ ; IOutput::GetSrcSizeAlign
  000fa	83 f8 01	 cmp	 eax, 1
  000fd	76 18		 jbe	 SHORT $LN2@adjustAspe@3

; 548  :     {
; 549  :         ar.m_CurrentOverlaySrcRect.align(GetActiveOutput()->GetSrcSizeAlign());

  000ff	e8 00 00 00 00	 call	 ?GetActiveOutput@@YAPAVIOutput@@XZ ; GetActiveOutput
  00104	8b c8		 mov	 ecx, eax
  00106	e8 00 00 00 00	 call	 ?GetSrcSizeAlign@IOutput@@QBEKXZ ; IOutput::GetSrcSizeAlign
  0010b	50		 push	 eax
  0010c	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0010f	83 c1 68	 add	 ecx, 104		; 00000068H
  00112	e8 00 00 00 00	 call	 ?align@CAspectRect@@QAEXH@Z ; CAspectRect::align
$LN2@adjustAspe@3:

; 550  :     }
; 551  :     if (GetActiveOutput()->GetDestSizeAlign() > 1)

  00117	e8 00 00 00 00	 call	 ?GetActiveOutput@@YAPAVIOutput@@XZ ; GetActiveOutput
  0011c	8b c8		 mov	 ecx, eax
  0011e	e8 00 00 00 00	 call	 ?GetDestSizeAlign@IOutput@@QBEKXZ ; IOutput::GetDestSizeAlign
  00123	83 f8 01	 cmp	 eax, 1
  00126	76 18		 jbe	 SHORT $LN1@adjustAspe@3

; 552  :     {
; 553  :         ar.m_CurrentOverlayDestRect.align(GetActiveOutput()->GetDestSizeAlign());

  00128	e8 00 00 00 00	 call	 ?GetActiveOutput@@YAPAVIOutput@@XZ ; GetActiveOutput
  0012d	8b c8		 mov	 ecx, eax
  0012f	e8 00 00 00 00	 call	 ?GetDestSizeAlign@IOutput@@QBEKXZ ; IOutput::GetDestSizeAlign
  00134	50		 push	 eax
  00135	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00138	83 c1 50	 add	 ecx, 80			; 00000050H
  0013b	e8 00 00 00 00	 call	 ?align@CAspectRect@@QAEXH@Z ; CAspectRect::align
$LN1@adjustAspe@3:

; 554  :     }
; 555  : 
; 556  :     // Ensure we do not shrink too small...avoids crashes when window gets too small
; 557  :     ar.m_CurrentOverlayDestRect.enforceMinSize(1);

  00140	6a 01		 push	 1
  00142	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00145	83 c1 50	 add	 ecx, 80			; 00000050H
  00148	e8 00 00 00 00	 call	 ?enforceMinSize@CAspectRect@@QAEXH@Z ; CAspectRect::enforceMinSize

; 558  :     ar.m_CurrentOverlaySrcRect.enforceMinSize(1);

  0014d	6a 01		 push	 1
  0014f	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00152	83 c1 68	 add	 ecx, 104		; 00000068H
  00155	e8 00 00 00 00	 call	 ?enforceMinSize@CAspectRect@@QAEXH@Z ; CAspectRect::enforceMinSize

; 559  : }

  0015a	5e		 pop	 esi
  0015b	8b e5		 mov	 esp, ebp
  0015d	5d		 pop	 ebp
  0015e	c2 08 00	 ret	 8
?adjustAspect@CScreenSanityAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CScreenSanityAspectFilter::adjustAspect
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustAspect@CPanAndZoomAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
tv969 = -120						; size = 4
tv955 = -116						; size = 4
tv935 = -112						; size = 4
tv920 = -108						; size = 4
tv898 = -104						; size = 4
tv875 = -100						; size = 4
tv861 = -96						; size = 4
tv841 = -92						; size = 4
tv826 = -88						; size = 4
tv803 = -84						; size = 4
tv775 = -80						; size = 4
tv761 = -76						; size = 4
tv741 = -72						; size = 4
tv726 = -68						; size = 4
tv704 = -64						; size = 4
tv681 = -60						; size = 4
tv667 = -56						; size = 4
tv647 = -52						; size = 4
tv632 = -48						; size = 4
tv609 = -44						; size = 4
_this$ = -40						; size = 4
_dx$ = -36						; size = 4
_rOriginalSrc$ = -32					; size = 24
_dy$ = -4						; size = 4
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CPanAndZoomAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CPanAndZoomAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 375  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 78	 sub	 esp, 120		; 00000078H
  00006	89 4d d8	 mov	 DWORD PTR _this$[ebp], ecx

; 376  :     int dx;
; 377  :     int dy;
; 378  :     CAspectRect rOriginalSrc(ar.m_CurrentOverlaySrcRect);

  00009	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0000c	83 c0 68	 add	 eax, 104		; 00000068H
  0000f	50		 push	 eax
  00010	8d 4d e0	 lea	 ecx, DWORD PTR _rOriginalSrc$[ebp]
  00013	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@ABV0@@Z ; CAspectRect::CAspectRect

; 379  : 
; 380  :     if(m_XZoom >= 1.0)

  00018	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  0001b	d9 e8		 fld1
  0001d	dc 59 20	 fcomp	 QWORD PTR [ecx+32]
  00020	df e0		 fnstsw	 ax
  00022	f6 c4 41	 test	 ah, 65			; 00000041H
  00025	0f 8a d7 01 00
	00		 jp	 $LN24@adjustAspe@4

; 381  :     {
; 382  :         dx = (int)floor(ar.m_CurrentOverlaySrcRect.width() * (1.0 - 1.0/m_XZoom));

  0002b	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0002e	83 c1 68	 add	 ecx, 104		; 00000068H
  00031	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00036	89 45 d4	 mov	 DWORD PTR tv609[ebp], eax
  00039	db 45 d4	 fild	 DWORD PTR tv609[ebp]
  0003c	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  0003f	d9 e8		 fld1
  00041	dc 72 20	 fdiv	 QWORD PTR [edx+32]
  00044	d9 e8		 fld1
  00046	de e1		 fsubrp	 ST(1), ST(0)
  00048	de c9		 fmulp	 ST(1), ST(0)
  0004a	83 ec 08	 sub	 esp, 8
  0004d	dd 1c 24	 fstp	 QWORD PTR [esp]
  00050	e8 00 00 00 00	 call	 _floor
  00055	83 c4 08	 add	 esp, 8
  00058	e8 00 00 00 00	 call	 __ftol2_sse
  0005d	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 383  :         ar.m_CurrentOverlaySrcRect.shrink(0,dx,0,0);

  00060	6a 00		 push	 0
  00062	6a 00		 push	 0
  00064	8b 45 dc	 mov	 eax, DWORD PTR _dx$[ebp]
  00067	50		 push	 eax
  00068	6a 00		 push	 0
  0006a	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0006d	83 c1 68	 add	 ecx, 104		; 00000068H
  00070	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 384  : 
; 385  :         // do we have to crop the input if we do we have to
; 386  :         // change the output too
; 387  :         if(m_XPos > 1.0)

  00075	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  00078	d9 e8		 fld1
  0007a	dc 59 10	 fcomp	 QWORD PTR [ecx+16]
  0007d	df e0		 fnstsw	 ax
  0007f	f6 c4 05	 test	 ah, 5
  00082	0f 8a aa 00 00
	00		 jp	 $LN23@adjustAspe@4

; 388  :         {
; 389  :             ar.m_CurrentOverlaySrcRect.shift(dx,0);

  00088	6a 00		 push	 0
  0008a	8b 55 dc	 mov	 edx, DWORD PTR _dx$[ebp]
  0008d	52		 push	 edx
  0008e	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00091	83 c1 68	 add	 ecx, 104		; 00000068H
  00094	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift

; 390  :             dx = (int)floor(ar.m_CurrentOverlaySrcRect.width() * (m_XPos - 1.0));

  00099	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0009c	83 c1 68	 add	 ecx, 104		; 00000068H
  0009f	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  000a4	89 45 d0	 mov	 DWORD PTR tv632[ebp], eax
  000a7	db 45 d0	 fild	 DWORD PTR tv632[ebp]
  000aa	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  000ad	dd 40 10	 fld	 QWORD PTR [eax+16]
  000b0	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  000b6	de c9		 fmulp	 ST(1), ST(0)
  000b8	83 ec 08	 sub	 esp, 8
  000bb	dd 1c 24	 fstp	 QWORD PTR [esp]
  000be	e8 00 00 00 00	 call	 _floor
  000c3	83 c4 08	 add	 esp, 8
  000c6	e8 00 00 00 00	 call	 __ftol2_sse
  000cb	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 391  :             ar.m_CurrentOverlaySrcRect.shrink(0,dx,0,0);

  000ce	6a 00		 push	 0
  000d0	6a 00		 push	 0
  000d2	8b 4d dc	 mov	 ecx, DWORD PTR _dx$[ebp]
  000d5	51		 push	 ecx
  000d6	6a 00		 push	 0
  000d8	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000db	83 c1 68	 add	 ecx, 104		; 00000068H
  000de	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 392  :             dx = (int)floor(ar.m_CurrentOverlayDestRect.width() * (m_XPos - 1.0));

  000e3	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  000e6	83 c1 50	 add	 ecx, 80			; 00000050H
  000e9	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  000ee	89 45 cc	 mov	 DWORD PTR tv647[ebp], eax
  000f1	db 45 cc	 fild	 DWORD PTR tv647[ebp]
  000f4	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  000f7	dd 42 10	 fld	 QWORD PTR [edx+16]
  000fa	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  00100	de c9		 fmulp	 ST(1), ST(0)
  00102	83 ec 08	 sub	 esp, 8
  00105	dd 1c 24	 fstp	 QWORD PTR [esp]
  00108	e8 00 00 00 00	 call	 _floor
  0010d	83 c4 08	 add	 esp, 8
  00110	e8 00 00 00 00	 call	 __ftol2_sse
  00115	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 393  :             ar.m_CurrentOverlayDestRect.shrink(dx, 0, 0, 0);

  00118	6a 00		 push	 0
  0011a	6a 00		 push	 0
  0011c	6a 00		 push	 0
  0011e	8b 45 dc	 mov	 eax, DWORD PTR _dx$[ebp]
  00121	50		 push	 eax
  00122	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00125	83 c1 50	 add	 ecx, 80			; 00000050H
  00128	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink
  0012d	e9 cb 00 00 00	 jmp	 $LN20@adjustAspe@4
$LN23@adjustAspe@4:

; 394  :         }
; 395  :         else if(m_XPos < 0.0)

  00132	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  00135	d9 ee		 fldz
  00137	dc 59 10	 fcomp	 QWORD PTR [ecx+16]
  0013a	df e0		 fnstsw	 ax
  0013c	f6 c4 41	 test	 ah, 65			; 00000041H
  0013f	0f 85 8e 00 00
	00		 jne	 $LN21@adjustAspe@4

; 396  :         {
; 397  :             dx = (int)floor(ar.m_CurrentOverlaySrcRect.width() * -m_XPos);

  00145	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00148	83 c1 68	 add	 ecx, 104		; 00000068H
  0014b	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00150	89 45 c8	 mov	 DWORD PTR tv667[ebp], eax
  00153	db 45 c8	 fild	 DWORD PTR tv667[ebp]
  00156	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  00159	dd 42 10	 fld	 QWORD PTR [edx+16]
  0015c	d9 e0		 fchs
  0015e	de c9		 fmulp	 ST(1), ST(0)
  00160	83 ec 08	 sub	 esp, 8
  00163	dd 1c 24	 fstp	 QWORD PTR [esp]
  00166	e8 00 00 00 00	 call	 _floor
  0016b	83 c4 08	 add	 esp, 8
  0016e	e8 00 00 00 00	 call	 __ftol2_sse
  00173	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 398  :             ar.m_CurrentOverlaySrcRect.shrink(dx,0,0,0);

  00176	6a 00		 push	 0
  00178	6a 00		 push	 0
  0017a	6a 00		 push	 0
  0017c	8b 45 dc	 mov	 eax, DWORD PTR _dx$[ebp]
  0017f	50		 push	 eax
  00180	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00183	83 c1 68	 add	 ecx, 104		; 00000068H
  00186	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 399  :             dx = (int)floor(ar.m_CurrentOverlayDestRect.width() * -m_XPos);

  0018b	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0018e	83 c1 50	 add	 ecx, 80			; 00000050H
  00191	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00196	89 45 c4	 mov	 DWORD PTR tv681[ebp], eax
  00199	db 45 c4	 fild	 DWORD PTR tv681[ebp]
  0019c	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  0019f	dd 41 10	 fld	 QWORD PTR [ecx+16]
  001a2	d9 e0		 fchs
  001a4	de c9		 fmulp	 ST(1), ST(0)
  001a6	83 ec 08	 sub	 esp, 8
  001a9	dd 1c 24	 fstp	 QWORD PTR [esp]
  001ac	e8 00 00 00 00	 call	 _floor
  001b1	83 c4 08	 add	 esp, 8
  001b4	e8 00 00 00 00	 call	 __ftol2_sse
  001b9	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 400  :             ar.m_CurrentOverlayDestRect.shrink(0, dx, 0, 0);

  001bc	6a 00		 push	 0
  001be	6a 00		 push	 0
  001c0	8b 55 dc	 mov	 edx, DWORD PTR _dx$[ebp]
  001c3	52		 push	 edx
  001c4	6a 00		 push	 0
  001c6	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  001c9	83 c1 50	 add	 ecx, 80			; 00000050H
  001cc	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 401  :         }
; 402  :         else

  001d1	eb 2a		 jmp	 SHORT $LN20@adjustAspe@4
$LN21@adjustAspe@4:

; 403  :         {
; 404  :             ar.m_CurrentOverlaySrcRect.shift((int)floor(dx*m_XPos), 0);

  001d3	6a 00		 push	 0
  001d5	db 45 dc	 fild	 DWORD PTR _dx$[ebp]
  001d8	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  001db	dc 48 10	 fmul	 QWORD PTR [eax+16]
  001de	83 ec 08	 sub	 esp, 8
  001e1	dd 1c 24	 fstp	 QWORD PTR [esp]
  001e4	e8 00 00 00 00	 call	 _floor
  001e9	83 c4 08	 add	 esp, 8
  001ec	e8 00 00 00 00	 call	 __ftol2_sse
  001f1	50		 push	 eax
  001f2	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  001f5	83 c1 68	 add	 ecx, 104		; 00000068H
  001f8	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift
$LN20@adjustAspe@4:

; 405  :         }
; 406  :     }
; 407  :     else

  001fd	e9 ce 01 00 00	 jmp	 $LN15@adjustAspe@4
$LN24@adjustAspe@4:

; 408  :     {
; 409  :         dx = (int)floor(ar.m_CurrentOverlayDestRect.width() * (1.0 - m_XZoom));

  00202	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00205	83 c1 50	 add	 ecx, 80			; 00000050H
  00208	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  0020d	89 45 c0	 mov	 DWORD PTR tv704[ebp], eax
  00210	db 45 c0	 fild	 DWORD PTR tv704[ebp]
  00213	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  00216	d9 e8		 fld1
  00218	dc 61 20	 fsub	 QWORD PTR [ecx+32]
  0021b	de c9		 fmulp	 ST(1), ST(0)
  0021d	83 ec 08	 sub	 esp, 8
  00220	dd 1c 24	 fstp	 QWORD PTR [esp]
  00223	e8 00 00 00 00	 call	 _floor
  00228	83 c4 08	 add	 esp, 8
  0022b	e8 00 00 00 00	 call	 __ftol2_sse
  00230	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 410  :         ar.m_CurrentOverlayDestRect.shrink(0,dx,0,0);

  00233	6a 00		 push	 0
  00235	6a 00		 push	 0
  00237	8b 55 dc	 mov	 edx, DWORD PTR _dx$[ebp]
  0023a	52		 push	 edx
  0023b	6a 00		 push	 0
  0023d	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00240	83 c1 50	 add	 ecx, 80			; 00000050H
  00243	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 411  : 
; 412  :         // do we have to crop the input if we do we have to
; 413  :         // change the output too
; 414  :         if(m_XPos > 1.0)

  00248	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  0024b	d9 e8		 fld1
  0024d	dc 58 10	 fcomp	 QWORD PTR [eax+16]
  00250	df e0		 fnstsw	 ax
  00252	f6 c4 05	 test	 ah, 5
  00255	0f 8a aa 00 00
	00		 jp	 $LN18@adjustAspe@4

; 415  :         {
; 416  :             ar.m_CurrentOverlayDestRect.shift(dx,0);

  0025b	6a 00		 push	 0
  0025d	8b 4d dc	 mov	 ecx, DWORD PTR _dx$[ebp]
  00260	51		 push	 ecx
  00261	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00264	83 c1 50	 add	 ecx, 80			; 00000050H
  00267	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift

; 417  :             dx = (int)floor(ar.m_CurrentOverlaySrcRect.width() * (m_XPos - 1.0));

  0026c	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0026f	83 c1 68	 add	 ecx, 104		; 00000068H
  00272	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00277	89 45 bc	 mov	 DWORD PTR tv726[ebp], eax
  0027a	db 45 bc	 fild	 DWORD PTR tv726[ebp]
  0027d	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  00280	dd 42 10	 fld	 QWORD PTR [edx+16]
  00283	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  00289	de c9		 fmulp	 ST(1), ST(0)
  0028b	83 ec 08	 sub	 esp, 8
  0028e	dd 1c 24	 fstp	 QWORD PTR [esp]
  00291	e8 00 00 00 00	 call	 _floor
  00296	83 c4 08	 add	 esp, 8
  00299	e8 00 00 00 00	 call	 __ftol2_sse
  0029e	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 418  :             ar.m_CurrentOverlaySrcRect.shrink(0,dx,0,0);

  002a1	6a 00		 push	 0
  002a3	6a 00		 push	 0
  002a5	8b 45 dc	 mov	 eax, DWORD PTR _dx$[ebp]
  002a8	50		 push	 eax
  002a9	6a 00		 push	 0
  002ab	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  002ae	83 c1 68	 add	 ecx, 104		; 00000068H
  002b1	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 419  :             dx = (int)floor(ar.m_CurrentOverlayDestRect.width() * (m_XPos - 1.0));

  002b6	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  002b9	83 c1 50	 add	 ecx, 80			; 00000050H
  002bc	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  002c1	89 45 b8	 mov	 DWORD PTR tv741[ebp], eax
  002c4	db 45 b8	 fild	 DWORD PTR tv741[ebp]
  002c7	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  002ca	dd 41 10	 fld	 QWORD PTR [ecx+16]
  002cd	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  002d3	de c9		 fmulp	 ST(1), ST(0)
  002d5	83 ec 08	 sub	 esp, 8
  002d8	dd 1c 24	 fstp	 QWORD PTR [esp]
  002db	e8 00 00 00 00	 call	 _floor
  002e0	83 c4 08	 add	 esp, 8
  002e3	e8 00 00 00 00	 call	 __ftol2_sse
  002e8	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 420  :             ar.m_CurrentOverlayDestRect.shrink(dx, 0, 0, 0);

  002eb	6a 00		 push	 0
  002ed	6a 00		 push	 0
  002ef	6a 00		 push	 0
  002f1	8b 55 dc	 mov	 edx, DWORD PTR _dx$[ebp]
  002f4	52		 push	 edx
  002f5	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  002f8	83 c1 50	 add	 ecx, 80			; 00000050H
  002fb	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink
  00300	e9 cb 00 00 00	 jmp	 $LN15@adjustAspe@4
$LN18@adjustAspe@4:

; 421  :         }
; 422  :         else if(m_XPos < 0.0)

  00305	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  00308	d9 ee		 fldz
  0030a	dc 58 10	 fcomp	 QWORD PTR [eax+16]
  0030d	df e0		 fnstsw	 ax
  0030f	f6 c4 41	 test	 ah, 65			; 00000041H
  00312	0f 85 8e 00 00
	00		 jne	 $LN16@adjustAspe@4

; 423  :         {
; 424  :             dx = (int)floor(ar.m_CurrentOverlaySrcRect.width() * -m_XPos);

  00318	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0031b	83 c1 68	 add	 ecx, 104		; 00000068H
  0031e	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00323	89 45 b4	 mov	 DWORD PTR tv761[ebp], eax
  00326	db 45 b4	 fild	 DWORD PTR tv761[ebp]
  00329	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  0032c	dd 41 10	 fld	 QWORD PTR [ecx+16]
  0032f	d9 e0		 fchs
  00331	de c9		 fmulp	 ST(1), ST(0)
  00333	83 ec 08	 sub	 esp, 8
  00336	dd 1c 24	 fstp	 QWORD PTR [esp]
  00339	e8 00 00 00 00	 call	 _floor
  0033e	83 c4 08	 add	 esp, 8
  00341	e8 00 00 00 00	 call	 __ftol2_sse
  00346	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 425  :             ar.m_CurrentOverlaySrcRect.shrink(dx,0,0,0);

  00349	6a 00		 push	 0
  0034b	6a 00		 push	 0
  0034d	6a 00		 push	 0
  0034f	8b 55 dc	 mov	 edx, DWORD PTR _dx$[ebp]
  00352	52		 push	 edx
  00353	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00356	83 c1 68	 add	 ecx, 104		; 00000068H
  00359	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 426  :             dx = (int)floor(ar.m_CurrentOverlayDestRect.width() * -m_XPos);

  0035e	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00361	83 c1 50	 add	 ecx, 80			; 00000050H
  00364	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00369	89 45 b0	 mov	 DWORD PTR tv775[ebp], eax
  0036c	db 45 b0	 fild	 DWORD PTR tv775[ebp]
  0036f	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  00372	dd 40 10	 fld	 QWORD PTR [eax+16]
  00375	d9 e0		 fchs
  00377	de c9		 fmulp	 ST(1), ST(0)
  00379	83 ec 08	 sub	 esp, 8
  0037c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0037f	e8 00 00 00 00	 call	 _floor
  00384	83 c4 08	 add	 esp, 8
  00387	e8 00 00 00 00	 call	 __ftol2_sse
  0038c	89 45 dc	 mov	 DWORD PTR _dx$[ebp], eax

; 427  :             ar.m_CurrentOverlayDestRect.shrink(0, dx, 0, 0);

  0038f	6a 00		 push	 0
  00391	6a 00		 push	 0
  00393	8b 4d dc	 mov	 ecx, DWORD PTR _dx$[ebp]
  00396	51		 push	 ecx
  00397	6a 00		 push	 0
  00399	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0039c	83 c1 50	 add	 ecx, 80			; 00000050H
  0039f	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 428  :         }
; 429  :         else

  003a4	eb 2a		 jmp	 SHORT $LN15@adjustAspe@4
$LN16@adjustAspe@4:

; 430  :         {
; 431  :             ar.m_CurrentOverlayDestRect.shift((int)floor(dx*m_XPos), 0);

  003a6	6a 00		 push	 0
  003a8	db 45 dc	 fild	 DWORD PTR _dx$[ebp]
  003ab	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  003ae	dc 4a 10	 fmul	 QWORD PTR [edx+16]
  003b1	83 ec 08	 sub	 esp, 8
  003b4	dd 1c 24	 fstp	 QWORD PTR [esp]
  003b7	e8 00 00 00 00	 call	 _floor
  003bc	83 c4 08	 add	 esp, 8
  003bf	e8 00 00 00 00	 call	 __ftol2_sse
  003c4	50		 push	 eax
  003c5	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  003c8	83 c1 50	 add	 ecx, 80			; 00000050H
  003cb	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift
$LN15@adjustAspe@4:

; 432  :         }
; 433  :     }
; 434  : 
; 435  : 
; 436  :     if(m_YZoom >= 1.0)

  003d0	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  003d3	d9 e8		 fld1
  003d5	dc 58 28	 fcomp	 QWORD PTR [eax+40]
  003d8	df e0		 fnstsw	 ax
  003da	f6 c4 41	 test	 ah, 65			; 00000041H
  003dd	0f 8a d7 01 00
	00		 jp	 $LN14@adjustAspe@4

; 437  :     {
; 438  :         dy = (int)floor(ar.m_CurrentOverlaySrcRect.height() * (1.0 - 1.0/m_YZoom));

  003e3	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  003e6	83 c1 68	 add	 ecx, 104		; 00000068H
  003e9	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  003ee	89 45 ac	 mov	 DWORD PTR tv803[ebp], eax
  003f1	db 45 ac	 fild	 DWORD PTR tv803[ebp]
  003f4	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  003f7	d9 e8		 fld1
  003f9	dc 71 28	 fdiv	 QWORD PTR [ecx+40]
  003fc	d9 e8		 fld1
  003fe	de e1		 fsubrp	 ST(1), ST(0)
  00400	de c9		 fmulp	 ST(1), ST(0)
  00402	83 ec 08	 sub	 esp, 8
  00405	dd 1c 24	 fstp	 QWORD PTR [esp]
  00408	e8 00 00 00 00	 call	 _floor
  0040d	83 c4 08	 add	 esp, 8
  00410	e8 00 00 00 00	 call	 __ftol2_sse
  00415	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 439  :         ar.m_CurrentOverlaySrcRect.shrink(0,0,0,dy);

  00418	8b 55 fc	 mov	 edx, DWORD PTR _dy$[ebp]
  0041b	52		 push	 edx
  0041c	6a 00		 push	 0
  0041e	6a 00		 push	 0
  00420	6a 00		 push	 0
  00422	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00425	83 c1 68	 add	 ecx, 104		; 00000068H
  00428	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 440  : 
; 441  :         // do we have to crop the input if we do we have to
; 442  :         // change the output too
; 443  :         if(m_YPos > 1.0)

  0042d	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  00430	d9 e8		 fld1
  00432	dc 58 18	 fcomp	 QWORD PTR [eax+24]
  00435	df e0		 fnstsw	 ax
  00437	f6 c4 05	 test	 ah, 5
  0043a	0f 8a aa 00 00
	00		 jp	 $LN13@adjustAspe@4

; 444  :         {
; 445  :             ar.m_CurrentOverlaySrcRect.shift(0, dy);

  00440	8b 4d fc	 mov	 ecx, DWORD PTR _dy$[ebp]
  00443	51		 push	 ecx
  00444	6a 00		 push	 0
  00446	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00449	83 c1 68	 add	 ecx, 104		; 00000068H
  0044c	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift

; 446  :             dy = (int)floor(ar.m_CurrentOverlaySrcRect.height() * (m_YPos - 1.0));

  00451	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00454	83 c1 68	 add	 ecx, 104		; 00000068H
  00457	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  0045c	89 45 a8	 mov	 DWORD PTR tv826[ebp], eax
  0045f	db 45 a8	 fild	 DWORD PTR tv826[ebp]
  00462	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  00465	dd 42 18	 fld	 QWORD PTR [edx+24]
  00468	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  0046e	de c9		 fmulp	 ST(1), ST(0)
  00470	83 ec 08	 sub	 esp, 8
  00473	dd 1c 24	 fstp	 QWORD PTR [esp]
  00476	e8 00 00 00 00	 call	 _floor
  0047b	83 c4 08	 add	 esp, 8
  0047e	e8 00 00 00 00	 call	 __ftol2_sse
  00483	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 447  :             ar.m_CurrentOverlaySrcRect.shrink(0,0,0,dy);

  00486	8b 45 fc	 mov	 eax, DWORD PTR _dy$[ebp]
  00489	50		 push	 eax
  0048a	6a 00		 push	 0
  0048c	6a 00		 push	 0
  0048e	6a 00		 push	 0
  00490	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00493	83 c1 68	 add	 ecx, 104		; 00000068H
  00496	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 448  :             dy = (int)floor(ar.m_CurrentOverlayDestRect.height() * (m_YPos - 1.0));

  0049b	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0049e	83 c1 50	 add	 ecx, 80			; 00000050H
  004a1	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  004a6	89 45 a4	 mov	 DWORD PTR tv841[ebp], eax
  004a9	db 45 a4	 fild	 DWORD PTR tv841[ebp]
  004ac	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  004af	dd 41 18	 fld	 QWORD PTR [ecx+24]
  004b2	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  004b8	de c9		 fmulp	 ST(1), ST(0)
  004ba	83 ec 08	 sub	 esp, 8
  004bd	dd 1c 24	 fstp	 QWORD PTR [esp]
  004c0	e8 00 00 00 00	 call	 _floor
  004c5	83 c4 08	 add	 esp, 8
  004c8	e8 00 00 00 00	 call	 __ftol2_sse
  004cd	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 449  :             ar.m_CurrentOverlayDestRect.shrink(0, 0, dy, 0);

  004d0	6a 00		 push	 0
  004d2	8b 55 fc	 mov	 edx, DWORD PTR _dy$[ebp]
  004d5	52		 push	 edx
  004d6	6a 00		 push	 0
  004d8	6a 00		 push	 0
  004da	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  004dd	83 c1 50	 add	 ecx, 80			; 00000050H
  004e0	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink
  004e5	e9 cb 00 00 00	 jmp	 $LN10@adjustAspe@4
$LN13@adjustAspe@4:

; 450  :         }
; 451  :         else if(m_YPos < 0.0)

  004ea	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  004ed	d9 ee		 fldz
  004ef	dc 58 18	 fcomp	 QWORD PTR [eax+24]
  004f2	df e0		 fnstsw	 ax
  004f4	f6 c4 41	 test	 ah, 65			; 00000041H
  004f7	0f 85 8e 00 00
	00		 jne	 $LN11@adjustAspe@4

; 452  :         {
; 453  :             dy = (int)floor(ar.m_CurrentOverlaySrcRect.height() * -m_YPos);

  004fd	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00500	83 c1 68	 add	 ecx, 104		; 00000068H
  00503	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00508	89 45 a0	 mov	 DWORD PTR tv861[ebp], eax
  0050b	db 45 a0	 fild	 DWORD PTR tv861[ebp]
  0050e	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  00511	dd 41 18	 fld	 QWORD PTR [ecx+24]
  00514	d9 e0		 fchs
  00516	de c9		 fmulp	 ST(1), ST(0)
  00518	83 ec 08	 sub	 esp, 8
  0051b	dd 1c 24	 fstp	 QWORD PTR [esp]
  0051e	e8 00 00 00 00	 call	 _floor
  00523	83 c4 08	 add	 esp, 8
  00526	e8 00 00 00 00	 call	 __ftol2_sse
  0052b	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 454  :             ar.m_CurrentOverlaySrcRect.shrink(0,0,dy,0);

  0052e	6a 00		 push	 0
  00530	8b 55 fc	 mov	 edx, DWORD PTR _dy$[ebp]
  00533	52		 push	 edx
  00534	6a 00		 push	 0
  00536	6a 00		 push	 0
  00538	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0053b	83 c1 68	 add	 ecx, 104		; 00000068H
  0053e	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 455  :             dy =(int)floor(ar.m_CurrentOverlayDestRect.height() * -m_YPos);

  00543	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00546	83 c1 50	 add	 ecx, 80			; 00000050H
  00549	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  0054e	89 45 9c	 mov	 DWORD PTR tv875[ebp], eax
  00551	db 45 9c	 fild	 DWORD PTR tv875[ebp]
  00554	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  00557	dd 40 18	 fld	 QWORD PTR [eax+24]
  0055a	d9 e0		 fchs
  0055c	de c9		 fmulp	 ST(1), ST(0)
  0055e	83 ec 08	 sub	 esp, 8
  00561	dd 1c 24	 fstp	 QWORD PTR [esp]
  00564	e8 00 00 00 00	 call	 _floor
  00569	83 c4 08	 add	 esp, 8
  0056c	e8 00 00 00 00	 call	 __ftol2_sse
  00571	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 456  :             ar.m_CurrentOverlayDestRect.shrink(0, 0, 0, dy);

  00574	8b 4d fc	 mov	 ecx, DWORD PTR _dy$[ebp]
  00577	51		 push	 ecx
  00578	6a 00		 push	 0
  0057a	6a 00		 push	 0
  0057c	6a 00		 push	 0
  0057e	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00581	83 c1 50	 add	 ecx, 80			; 00000050H
  00584	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 457  :         }
; 458  :         else

  00589	eb 2a		 jmp	 SHORT $LN10@adjustAspe@4
$LN11@adjustAspe@4:

; 459  :         {
; 460  :             ar.m_CurrentOverlaySrcRect.shift(0, (int)floor(dy*m_YPos));

  0058b	db 45 fc	 fild	 DWORD PTR _dy$[ebp]
  0058e	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  00591	dc 4a 18	 fmul	 QWORD PTR [edx+24]
  00594	83 ec 08	 sub	 esp, 8
  00597	dd 1c 24	 fstp	 QWORD PTR [esp]
  0059a	e8 00 00 00 00	 call	 _floor
  0059f	83 c4 08	 add	 esp, 8
  005a2	e8 00 00 00 00	 call	 __ftol2_sse
  005a7	50		 push	 eax
  005a8	6a 00		 push	 0
  005aa	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  005ad	83 c1 68	 add	 ecx, 104		; 00000068H
  005b0	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift
$LN10@adjustAspe@4:

; 461  :         }
; 462  :     }
; 463  :     else

  005b5	e9 ce 01 00 00	 jmp	 $LN5@adjustAspe@4
$LN14@adjustAspe@4:

; 464  :     {
; 465  :         dy = (int)floor(ar.m_CurrentOverlayDestRect.height() * (1.0 - m_YZoom));

  005ba	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  005bd	83 c1 50	 add	 ecx, 80			; 00000050H
  005c0	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  005c5	89 45 98	 mov	 DWORD PTR tv898[ebp], eax
  005c8	db 45 98	 fild	 DWORD PTR tv898[ebp]
  005cb	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  005ce	d9 e8		 fld1
  005d0	dc 60 28	 fsub	 QWORD PTR [eax+40]
  005d3	de c9		 fmulp	 ST(1), ST(0)
  005d5	83 ec 08	 sub	 esp, 8
  005d8	dd 1c 24	 fstp	 QWORD PTR [esp]
  005db	e8 00 00 00 00	 call	 _floor
  005e0	83 c4 08	 add	 esp, 8
  005e3	e8 00 00 00 00	 call	 __ftol2_sse
  005e8	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 466  :         ar.m_CurrentOverlayDestRect.shrink(0,0,0,dy);

  005eb	8b 4d fc	 mov	 ecx, DWORD PTR _dy$[ebp]
  005ee	51		 push	 ecx
  005ef	6a 00		 push	 0
  005f1	6a 00		 push	 0
  005f3	6a 00		 push	 0
  005f5	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  005f8	83 c1 50	 add	 ecx, 80			; 00000050H
  005fb	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 467  : 
; 468  :         // do we have to crop the input if we do we have to
; 469  :         // change the output too
; 470  :         if(m_YPos > 1.0)

  00600	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  00603	d9 e8		 fld1
  00605	dc 5a 18	 fcomp	 QWORD PTR [edx+24]
  00608	df e0		 fnstsw	 ax
  0060a	f6 c4 05	 test	 ah, 5
  0060d	0f 8a aa 00 00
	00		 jp	 $LN8@adjustAspe@4

; 471  :         {
; 472  :             ar.m_CurrentOverlayDestRect.shift(0, dy);

  00613	8b 45 fc	 mov	 eax, DWORD PTR _dy$[ebp]
  00616	50		 push	 eax
  00617	6a 00		 push	 0
  00619	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0061c	83 c1 50	 add	 ecx, 80			; 00000050H
  0061f	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift

; 473  :             dy = (int)floor(ar.m_CurrentOverlaySrcRect.height() * (m_YPos - 1.0));

  00624	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00627	83 c1 68	 add	 ecx, 104		; 00000068H
  0062a	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  0062f	89 45 94	 mov	 DWORD PTR tv920[ebp], eax
  00632	db 45 94	 fild	 DWORD PTR tv920[ebp]
  00635	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  00638	dd 41 18	 fld	 QWORD PTR [ecx+24]
  0063b	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  00641	de c9		 fmulp	 ST(1), ST(0)
  00643	83 ec 08	 sub	 esp, 8
  00646	dd 1c 24	 fstp	 QWORD PTR [esp]
  00649	e8 00 00 00 00	 call	 _floor
  0064e	83 c4 08	 add	 esp, 8
  00651	e8 00 00 00 00	 call	 __ftol2_sse
  00656	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 474  :             ar.m_CurrentOverlaySrcRect.shrink(0,0,0,dy);

  00659	8b 55 fc	 mov	 edx, DWORD PTR _dy$[ebp]
  0065c	52		 push	 edx
  0065d	6a 00		 push	 0
  0065f	6a 00		 push	 0
  00661	6a 00		 push	 0
  00663	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00666	83 c1 68	 add	 ecx, 104		; 00000068H
  00669	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 475  :             dy = (int)floor(ar.m_CurrentOverlayDestRect.height() * (m_YPos - 1.0));

  0066e	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00671	83 c1 50	 add	 ecx, 80			; 00000050H
  00674	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00679	89 45 90	 mov	 DWORD PTR tv935[ebp], eax
  0067c	db 45 90	 fild	 DWORD PTR tv935[ebp]
  0067f	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  00682	dd 40 18	 fld	 QWORD PTR [eax+24]
  00685	dc 25 00 00 00
	00		 fsub	 QWORD PTR __real@3ff0000000000000
  0068b	de c9		 fmulp	 ST(1), ST(0)
  0068d	83 ec 08	 sub	 esp, 8
  00690	dd 1c 24	 fstp	 QWORD PTR [esp]
  00693	e8 00 00 00 00	 call	 _floor
  00698	83 c4 08	 add	 esp, 8
  0069b	e8 00 00 00 00	 call	 __ftol2_sse
  006a0	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 476  :             ar.m_CurrentOverlayDestRect.shrink(0, 0, dy, 0);

  006a3	6a 00		 push	 0
  006a5	8b 4d fc	 mov	 ecx, DWORD PTR _dy$[ebp]
  006a8	51		 push	 ecx
  006a9	6a 00		 push	 0
  006ab	6a 00		 push	 0
  006ad	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  006b0	83 c1 50	 add	 ecx, 80			; 00000050H
  006b3	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink
  006b8	e9 cb 00 00 00	 jmp	 $LN5@adjustAspe@4
$LN8@adjustAspe@4:

; 477  :         }
; 478  :         else if(m_YPos < 0.0)

  006bd	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  006c0	d9 ee		 fldz
  006c2	dc 5a 18	 fcomp	 QWORD PTR [edx+24]
  006c5	df e0		 fnstsw	 ax
  006c7	f6 c4 41	 test	 ah, 65			; 00000041H
  006ca	0f 85 8e 00 00
	00		 jne	 $LN6@adjustAspe@4

; 479  :         {
; 480  :             dy = (int)floor(ar.m_CurrentOverlaySrcRect.height() * -m_YPos);

  006d0	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  006d3	83 c1 68	 add	 ecx, 104		; 00000068H
  006d6	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  006db	89 45 8c	 mov	 DWORD PTR tv955[ebp], eax
  006de	db 45 8c	 fild	 DWORD PTR tv955[ebp]
  006e1	8b 45 d8	 mov	 eax, DWORD PTR _this$[ebp]
  006e4	dd 40 18	 fld	 QWORD PTR [eax+24]
  006e7	d9 e0		 fchs
  006e9	de c9		 fmulp	 ST(1), ST(0)
  006eb	83 ec 08	 sub	 esp, 8
  006ee	dd 1c 24	 fstp	 QWORD PTR [esp]
  006f1	e8 00 00 00 00	 call	 _floor
  006f6	83 c4 08	 add	 esp, 8
  006f9	e8 00 00 00 00	 call	 __ftol2_sse
  006fe	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 481  :             ar.m_CurrentOverlaySrcRect.shrink(0,0,dy,0);

  00701	6a 00		 push	 0
  00703	8b 4d fc	 mov	 ecx, DWORD PTR _dy$[ebp]
  00706	51		 push	 ecx
  00707	6a 00		 push	 0
  00709	6a 00		 push	 0
  0070b	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0070e	83 c1 68	 add	 ecx, 104		; 00000068H
  00711	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 482  :             dy =(int)floor(ar.m_CurrentOverlayDestRect.height() * -m_YPos);

  00716	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00719	83 c1 50	 add	 ecx, 80			; 00000050H
  0071c	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  00721	89 45 88	 mov	 DWORD PTR tv969[ebp], eax
  00724	db 45 88	 fild	 DWORD PTR tv969[ebp]
  00727	8b 55 d8	 mov	 edx, DWORD PTR _this$[ebp]
  0072a	dd 42 18	 fld	 QWORD PTR [edx+24]
  0072d	d9 e0		 fchs
  0072f	de c9		 fmulp	 ST(1), ST(0)
  00731	83 ec 08	 sub	 esp, 8
  00734	dd 1c 24	 fstp	 QWORD PTR [esp]
  00737	e8 00 00 00 00	 call	 _floor
  0073c	83 c4 08	 add	 esp, 8
  0073f	e8 00 00 00 00	 call	 __ftol2_sse
  00744	89 45 fc	 mov	 DWORD PTR _dy$[ebp], eax

; 483  :             ar.m_CurrentOverlayDestRect.shrink(0, 0, 0, dy);

  00747	8b 45 fc	 mov	 eax, DWORD PTR _dy$[ebp]
  0074a	50		 push	 eax
  0074b	6a 00		 push	 0
  0074d	6a 00		 push	 0
  0074f	6a 00		 push	 0
  00751	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00754	83 c1 50	 add	 ecx, 80			; 00000050H
  00757	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 484  :         }
; 485  :         else

  0075c	eb 2a		 jmp	 SHORT $LN5@adjustAspe@4
$LN6@adjustAspe@4:

; 486  :         {
; 487  :             ar.m_CurrentOverlayDestRect.shift(0, (int)floor(dy*m_YPos));

  0075e	db 45 fc	 fild	 DWORD PTR _dy$[ebp]
  00761	8b 4d d8	 mov	 ecx, DWORD PTR _this$[ebp]
  00764	dc 49 18	 fmul	 QWORD PTR [ecx+24]
  00767	83 ec 08	 sub	 esp, 8
  0076a	dd 1c 24	 fstp	 QWORD PTR [esp]
  0076d	e8 00 00 00 00	 call	 _floor
  00772	83 c4 08	 add	 esp, 8
  00775	e8 00 00 00 00	 call	 __ftol2_sse
  0077a	50		 push	 eax
  0077b	6a 00		 push	 0
  0077d	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00780	83 c1 50	 add	 ecx, 80			; 00000050H
  00783	e8 00 00 00 00	 call	 ?shift@CAspectRect@@QAEXHH@Z ; CAspectRect::shift
$LN5@adjustAspe@4:

; 488  :         }
; 489  :     }
; 490  : 
; 491  :     // Clip the source image to actually available image
; 492  :     if (ar.m_CurrentOverlaySrcRect.left < rOriginalSrc.left) ar.m_CurrentOverlaySrcRect.left = rOriginalSrc.left;

  00788	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  0078b	8b 42 68	 mov	 eax, DWORD PTR [edx+104]
  0078e	3b 45 e0	 cmp	 eax, DWORD PTR _rOriginalSrc$[ebp]
  00791	7d 09		 jge	 SHORT $LN4@adjustAspe@4
  00793	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00796	8b 55 e0	 mov	 edx, DWORD PTR _rOriginalSrc$[ebp]
  00799	89 51 68	 mov	 DWORD PTR [ecx+104], edx
$LN4@adjustAspe@4:

; 493  :     if (ar.m_CurrentOverlaySrcRect.right > rOriginalSrc.right) ar.m_CurrentOverlaySrcRect.right = rOriginalSrc.right;

  0079c	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0079f	8b 48 70	 mov	 ecx, DWORD PTR [eax+112]
  007a2	3b 4d e8	 cmp	 ecx, DWORD PTR _rOriginalSrc$[ebp+8]
  007a5	7e 09		 jle	 SHORT $LN3@adjustAspe@4
  007a7	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  007aa	8b 45 e8	 mov	 eax, DWORD PTR _rOriginalSrc$[ebp+8]
  007ad	89 42 70	 mov	 DWORD PTR [edx+112], eax
$LN3@adjustAspe@4:

; 494  :     if (ar.m_CurrentOverlaySrcRect.top < rOriginalSrc.top) ar.m_CurrentOverlaySrcRect.top = rOriginalSrc.top;

  007b0	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  007b3	8b 51 6c	 mov	 edx, DWORD PTR [ecx+108]
  007b6	3b 55 e4	 cmp	 edx, DWORD PTR _rOriginalSrc$[ebp+4]
  007b9	7d 09		 jge	 SHORT $LN2@adjustAspe@4
  007bb	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  007be	8b 4d e4	 mov	 ecx, DWORD PTR _rOriginalSrc$[ebp+4]
  007c1	89 48 6c	 mov	 DWORD PTR [eax+108], ecx
$LN2@adjustAspe@4:

; 495  :     if (ar.m_CurrentOverlaySrcRect.bottom > rOriginalSrc.bottom) ar.m_CurrentOverlaySrcRect.bottom = rOriginalSrc.bottom;

  007c4	8b 55 08	 mov	 edx, DWORD PTR _ar$[ebp]
  007c7	8b 42 74	 mov	 eax, DWORD PTR [edx+116]
  007ca	3b 45 ec	 cmp	 eax, DWORD PTR _rOriginalSrc$[ebp+12]
  007cd	7e 09		 jle	 SHORT $LN1@adjustAspe@4
  007cf	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  007d2	8b 55 ec	 mov	 edx, DWORD PTR _rOriginalSrc$[ebp+12]
  007d5	89 51 74	 mov	 DWORD PTR [ecx+116], edx
$LN1@adjustAspe@4:

; 496  : }

  007d8	8b e5		 mov	 esp, ebp
  007da	5d		 pop	 ebp
  007db	c2 08 00	 ret	 8
?adjustAspect@CPanAndZoomAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CPanAndZoomAspectFilter::adjustAspect
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustAspect@CAnalogueBlankingFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CAnalogueBlankingFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CAnalogueBlankingFilter::adjustAspect, COMDAT
; _this$ = ecx

; 160  : {

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

; 161  :     ar.m_CurrentOverlaySrcRect.shrink(m_LeftShift, m_RightShift, m_TopShift, m_BottomShift);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 48 10	 mov	 ecx, DWORD PTR [eax+16]
  0000d	51		 push	 ecx
  0000e	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00011	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  00014	50		 push	 eax
  00015	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00018	8b 51 18	 mov	 edx, DWORD PTR [ecx+24]
  0001b	52		 push	 edx
  0001c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001f	8b 48 14	 mov	 ecx, DWORD PTR [eax+20]
  00022	51		 push	 ecx
  00023	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00026	83 c1 68	 add	 ecx, 104		; 00000068H
  00029	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 162  : }

  0002e	8b e5		 mov	 esp, ebp
  00030	5d		 pop	 ebp
  00031	c2 08 00	 ret	 8
?adjustAspect@CAnalogueBlankingFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CAnalogueBlankingFilter::adjustAspect
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustAspect@COverscanAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@COverscanAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; COverscanAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 117  : {

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

; 118  :     ar.m_CurrentOverlaySrcRect.shrink(m_LeftOverscan, m_RightOverscan, m_TopOverscan, m_BottomOverscan);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 48 10	 mov	 ecx, DWORD PTR [eax+16]
  0000d	51		 push	 ecx
  0000e	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00011	8b 42 0c	 mov	 eax, DWORD PTR [edx+12]
  00014	50		 push	 eax
  00015	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00018	8b 51 18	 mov	 edx, DWORD PTR [ecx+24]
  0001b	52		 push	 edx
  0001c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001f	8b 48 14	 mov	 ecx, DWORD PTR [eax+20]
  00022	51		 push	 ecx
  00023	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00026	83 c1 68	 add	 ecx, 104		; 00000068H
  00029	e8 00 00 00 00	 call	 ?shrink@CAspectRect@@QAEXHHHH@Z ; CAspectRect::shrink

; 119  : }

  0002e	8b e5		 mov	 esp, ebp
  00030	5d		 pop	 ebp
  00031	c2 08 00	 ret	 8
?adjustAspect@COverscanAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; COverscanAspectFilter::adjustAspect
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectrect.h
_TEXT	ENDS
;	COMDAT ?adjustSourceAspectSmart@CAspectRect@@QAEXNAAUtagRECT@@H@Z
_TEXT	SEGMENT
_this$ = -20						; size = 4
_r$ = -16						; size = 16
_ar$ = 8						; size = 8
_boundRect$ = 16					; size = 4
_preserveWidth$ = 20					; size = 4
?adjustSourceAspectSmart@CAspectRect@@QAEXNAAUtagRECT@@H@Z PROC ; CAspectRect::adjustSourceAspectSmart, COMDAT
; _this$ = ecx

; 376  :     {

  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

; 377  :         RECT r = {left,top,right,bottom};

  00009	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	8b 08		 mov	 ecx, DWORD PTR [eax]
  0000e	89 4d f0	 mov	 DWORD PTR _r$[ebp], ecx
  00011	8b 55 ec	 mov	 edx, DWORD PTR _this$[ebp]
  00014	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  00017	89 45 f4	 mov	 DWORD PTR _r$[ebp+4], eax
  0001a	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  0001d	8b 51 08	 mov	 edx, DWORD PTR [ecx+8]
  00020	89 55 f8	 mov	 DWORD PTR _r$[ebp+8], edx
  00023	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  00026	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00029	89 4d fc	 mov	 DWORD PTR _r$[ebp+12], ecx

; 378  :         if (preserveWidth)

  0002c	83 7d 14 00	 cmp	 DWORD PTR _preserveWidth$[ebp], 0
  00030	74 13		 je	 SHORT $LN6@adjustSour

; 379  :         {
; 380  :             adjustSourceAspectByHeight(ar);

  00032	83 ec 08	 sub	 esp, 8
  00035	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  00038	dd 1c 24	 fstp	 QWORD PTR [esp]
  0003b	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  0003e	e8 00 00 00 00	 call	 ?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByHeight

; 381  :         }
; 382  :         else

  00043	eb 11		 jmp	 SHORT $LN5@adjustSour
$LN6@adjustSour:

; 383  :         {
; 384  :             adjustSourceAspectByWidth(ar);

  00045	83 ec 08	 sub	 esp, 8
  00048	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  0004b	dd 1c 24	 fstp	 QWORD PTR [esp]
  0004e	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00051	e8 00 00 00 00	 call	 ?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByWidth
$LN5@adjustSour:

; 385  :         }
; 386  :         if (top < boundRect.top || bottom > boundRect.bottom)

  00056	8b 55 ec	 mov	 edx, DWORD PTR _this$[ebp]
  00059	8b 45 10	 mov	 eax, DWORD PTR _boundRect$[ebp]
  0005c	8b 4a 04	 mov	 ecx, DWORD PTR [edx+4]
  0005f	3b 48 04	 cmp	 ecx, DWORD PTR [eax+4]
  00062	7c 0e		 jl	 SHORT $LN3@adjustSour
  00064	8b 55 ec	 mov	 edx, DWORD PTR _this$[ebp]
  00067	8b 45 10	 mov	 eax, DWORD PTR _boundRect$[ebp]
  0006a	8b 4a 0c	 mov	 ecx, DWORD PTR [edx+12]
  0006d	3b 48 0c	 cmp	 ecx, DWORD PTR [eax+12]
  00070	7e 4d		 jle	 SHORT $LN1@adjustSour
$LN3@adjustSour:

; 387  :         {
; 388  :             left=r.left;

  00072	8b 55 ec	 mov	 edx, DWORD PTR _this$[ebp]
  00075	8b 45 f0	 mov	 eax, DWORD PTR _r$[ebp]
  00078	89 02		 mov	 DWORD PTR [edx], eax

; 389  :             right=r.right;

  0007a	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  0007d	8b 55 f8	 mov	 edx, DWORD PTR _r$[ebp+8]
  00080	89 51 08	 mov	 DWORD PTR [ecx+8], edx

; 390  :             top=r.top;

  00083	8b 45 ec	 mov	 eax, DWORD PTR _this$[ebp]
  00086	8b 4d f4	 mov	 ecx, DWORD PTR _r$[ebp+4]
  00089	89 48 04	 mov	 DWORD PTR [eax+4], ecx

; 391  :             bottom=r.bottom;

  0008c	8b 55 ec	 mov	 edx, DWORD PTR _this$[ebp]
  0008f	8b 45 fc	 mov	 eax, DWORD PTR _r$[ebp+12]
  00092	89 42 0c	 mov	 DWORD PTR [edx+12], eax

; 392  :             if (preserveWidth)

  00095	83 7d 14 00	 cmp	 DWORD PTR _preserveWidth$[ebp], 0
  00099	74 13		 je	 SHORT $LN2@adjustSour

; 393  :             {
; 394  :                 adjustSourceAspectByWidth(ar);

  0009b	83 ec 08	 sub	 esp, 8
  0009e	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  000a1	dd 1c 24	 fstp	 QWORD PTR [esp]
  000a4	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  000a7	e8 00 00 00 00	 call	 ?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByWidth

; 395  :             }
; 396  :             else

  000ac	eb 11		 jmp	 SHORT $LN1@adjustSour
$LN2@adjustSour:

; 397  :             {
; 398  :                 adjustSourceAspectByHeight(ar);

  000ae	83 ec 08	 sub	 esp, 8
  000b1	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  000b4	dd 1c 24	 fstp	 QWORD PTR [esp]
  000b7	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  000ba	e8 00 00 00 00	 call	 ?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByHeight
$LN1@adjustSour:

; 399  :             }
; 400  :         }
; 401  :     }

  000bf	8b e5		 mov	 esp, ebp
  000c1	5d		 pop	 ebp
  000c2	c2 10 00	 ret	 16			; 00000010H
?adjustSourceAspectSmart@CAspectRect@@QAEXNAAUtagRECT@@H@Z ENDP ; CAspectRect::adjustSourceAspectSmart
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustSourceAspectByShrink@CAspectRect@@QAEXN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_ar$ = 8						; size = 8
?adjustSourceAspectByShrink@CAspectRect@@QAEXN@Z PROC	; CAspectRect::adjustSourceAspectByShrink, COMDAT
; _this$ = ecx

; 358  :     {

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

; 359  :         if (ar > sourceAspect())

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?sourceAspect@CAspectRect@@QAENXZ ; CAspectRect::sourceAspect
  0000f	dc 5d 08	 fcomp	 QWORD PTR _ar$[ebp]
  00012	df e0		 fnstsw	 ax
  00014	f6 c4 05	 test	 ah, 5
  00017	7a 13		 jp	 SHORT $LN2@adjustSour@2

; 360  :         {
; 361  :             adjustSourceAspectByHeight(ar);

  00019	83 ec 08	 sub	 esp, 8
  0001c	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  0001f	dd 1c 24	 fstp	 QWORD PTR [esp]
  00022	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00025	e8 00 00 00 00	 call	 ?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByHeight

; 362  :         }
; 363  :         else

  0002a	eb 11		 jmp	 SHORT $LN1@adjustSour@2
$LN2@adjustSour@2:

; 364  :         {
; 365  :             adjustSourceAspectByWidth(ar);

  0002c	83 ec 08	 sub	 esp, 8
  0002f	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  00032	dd 1c 24	 fstp	 QWORD PTR [esp]
  00035	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00038	e8 00 00 00 00	 call	 ?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByWidth
$LN1@adjustSour@2:

; 366  :         }
; 367  :     }

  0003d	8b e5		 mov	 esp, ebp
  0003f	5d		 pop	 ebp
  00040	c2 08 00	 ret	 8
?adjustSourceAspectByShrink@CAspectRect@@QAEXN@Z ENDP	; CAspectRect::adjustSourceAspectByShrink
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustTargetAspectByShrink@CAspectRect@@QAEXN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_ar$ = 8						; size = 8
?adjustTargetAspectByShrink@CAspectRect@@QAEXN@Z PROC	; CAspectRect::adjustTargetAspectByShrink, COMDAT
; _this$ = ecx

; 354  :     {

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

; 355  :         adjustSourceAspectByShrink(ar/m_OutputAdjustment);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  0000d	dc 70 10	 fdiv	 QWORD PTR [eax+16]
  00010	83 ec 08	 sub	 esp, 8
  00013	dd 1c 24	 fstp	 QWORD PTR [esp]
  00016	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00019	e8 00 00 00 00	 call	 ?adjustSourceAspectByShrink@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByShrink

; 356  :     }

  0001e	8b e5		 mov	 esp, ebp
  00020	5d		 pop	 ebp
  00021	c2 08 00	 ret	 8
?adjustTargetAspectByShrink@CAspectRect@@QAEXN@Z ENDP	; CAspectRect::adjustTargetAspectByShrink
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustSourceAspectByGrowth@CAspectRect@@QAEXN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_ar$ = 8						; size = 8
?adjustSourceAspectByGrowth@CAspectRect@@QAEXN@Z PROC	; CAspectRect::adjustSourceAspectByGrowth, COMDAT
; _this$ = ecx

; 343  :     {

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

; 344  :         if (ar < sourceAspect())

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?sourceAspect@CAspectRect@@QAENXZ ; CAspectRect::sourceAspect
  0000f	dc 5d 08	 fcomp	 QWORD PTR _ar$[ebp]
  00012	df e0		 fnstsw	 ax
  00014	f6 c4 41	 test	 ah, 65			; 00000041H
  00017	75 13		 jne	 SHORT $LN2@adjustSour@3

; 345  :         {
; 346  :             adjustSourceAspectByHeight(ar);

  00019	83 ec 08	 sub	 esp, 8
  0001c	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  0001f	dd 1c 24	 fstp	 QWORD PTR [esp]
  00022	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00025	e8 00 00 00 00	 call	 ?adjustSourceAspectByHeight@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByHeight

; 347  :         }
; 348  :         else

  0002a	eb 11		 jmp	 SHORT $LN1@adjustSour@3
$LN2@adjustSour@3:

; 349  :         {
; 350  :             adjustSourceAspectByWidth(ar);

  0002c	83 ec 08	 sub	 esp, 8
  0002f	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  00032	dd 1c 24	 fstp	 QWORD PTR [esp]
  00035	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00038	e8 00 00 00 00	 call	 ?adjustSourceAspectByWidth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByWidth
$LN1@adjustSour@3:

; 351  :         }
; 352  :     }

  0003d	8b e5		 mov	 esp, ebp
  0003f	5d		 pop	 ebp
  00040	c2 08 00	 ret	 8
?adjustSourceAspectByGrowth@CAspectRect@@QAEXN@Z ENDP	; CAspectRect::adjustSourceAspectByGrowth
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?adjustTargetAspectByGrowth@CAspectRect@@QAEXN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_ar$ = 8						; size = 8
?adjustTargetAspectByGrowth@CAspectRect@@QAEXN@Z PROC	; CAspectRect::adjustTargetAspectByGrowth, COMDAT
; _this$ = ecx

; 339  :     {

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

; 340  :         adjustSourceAspectByGrowth(ar/m_OutputAdjustment);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	dd 45 08	 fld	 QWORD PTR _ar$[ebp]
  0000d	dc 70 10	 fdiv	 QWORD PTR [eax+16]
  00010	83 ec 08	 sub	 esp, 8
  00013	dd 1c 24	 fstp	 QWORD PTR [esp]
  00016	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00019	e8 00 00 00 00	 call	 ?adjustSourceAspectByGrowth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustSourceAspectByGrowth

; 341  :     }

  0001e	8b e5		 mov	 esp, ebp
  00020	5d		 pop	 ebp
  00021	c2 08 00	 ret	 8
?adjustTargetAspectByGrowth@CAspectRect@@QAEXN@Z ENDP	; CAspectRect::adjustTargetAspectByGrowth
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?targetAspect@CAspectRect@@QAENXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?targetAspect@CAspectRect@@QAENXZ PROC			; CAspectRect::targetAspect, COMDAT
; _this$ = ecx

; 92   :     {

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

; 93   :         return sourceAspect() * m_OutputAdjustment;

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?sourceAspect@CAspectRect@@QAENXZ ; CAspectRect::sourceAspect
  0000f	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00012	dc 48 10	 fmul	 QWORD PTR [eax+16]

; 94   :     }

  00015	8b e5		 mov	 esp, ebp
  00017	5d		 pop	 ebp
  00018	c3		 ret	 0
?targetAspect@CAspectRect@@QAENXZ ENDP			; CAspectRect::targetAspect
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	COMDAT ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
__Ptr$138368 = -4					; size = 4
__Built$ = 8						; size = 1
__Newsize$ = 12						; size = 4
?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy, COMDAT
; _this$ = ecx

; 2148 : 		{	// initialize buffer, deallocating any storage

  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

; 2149 : 		if (!_Built)

  00009	0f b6 45 08	 movzx	 eax, BYTE PTR __Built$[ebp]
  0000d	85 c0		 test	 eax, eax
  0000f	75 02		 jne	 SHORT $LN4@Tidy@42
  00011	eb 47		 jmp	 SHORT $LN3@Tidy@42
$LN4@Tidy@42:

; 2150 : 			;
; 2151 : 		else if (_BUF_SIZE <= _Myres)

  00013	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 79 18 10	 cmp	 DWORD PTR [ecx+24], 16	; 00000010H
  0001a	72 3e		 jb	 SHORT $LN3@Tidy@42

; 2152 : 			{	// copy any leftovers to small buffer and deallocate
; 2153 : 			_Elem *_Ptr = _Bx._Ptr;

  0001c	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0001f	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  00022	89 45 fc	 mov	 DWORD PTR __Ptr$138368[ebp], eax

; 2154 : 			if (0 < _Newsize)

  00025	83 7d 0c 00	 cmp	 DWORD PTR __Newsize$[ebp], 0
  00029	76 19		 jbe	 SHORT $LN1@Tidy@42

; 2155 : 				_Traits_helper::copy_s<_Traits>(_Bx._Buf, _BUF_SIZE, _Ptr, _Newsize);

  0002b	8b 4d 0c	 mov	 ecx, DWORD PTR __Newsize$[ebp]
  0002e	51		 push	 ecx
  0002f	8b 55 fc	 mov	 edx, DWORD PTR __Ptr$138368[ebp]
  00032	52		 push	 edx
  00033	6a 10		 push	 16			; 00000010H
  00035	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00038	83 c0 04	 add	 eax, 4
  0003b	50		 push	 eax
  0003c	e8 00 00 00 00	 call	 ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
  00041	83 c4 10	 add	 esp, 16			; 00000010H
$LN1@Tidy@42:

; 2156 : 			_Mybase::_Alval.deallocate(_Ptr, _Myres + 1);

  00044	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00047	8b 51 18	 mov	 edx, DWORD PTR [ecx+24]
  0004a	83 c2 01	 add	 edx, 1
  0004d	52		 push	 edx
  0004e	8b 45 fc	 mov	 eax, DWORD PTR __Ptr$138368[ebp]
  00051	50		 push	 eax
  00052	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00055	e8 00 00 00 00	 call	 ?deallocate@?$allocator@D@std@@QAEXPADI@Z ; std::allocator<char>::deallocate
$LN3@Tidy@42:

; 2157 : 			}
; 2158 : 		_Myres = _BUF_SIZE - 1;

  0005a	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0005d	c7 41 18 0f 00
	00 00		 mov	 DWORD PTR [ecx+24], 15	; 0000000fH

; 2159 : 		_Eos(_Newsize);

  00064	8b 55 0c	 mov	 edx, DWORD PTR __Newsize$[ebp]
  00067	52		 push	 edx
  00068	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0006b	e8 00 00 00 00	 call	 ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos

; 2160 : 		}

  00070	8b e5		 mov	 esp, ebp
  00072	5d		 pop	 ebp
  00073	c2 08 00	 ret	 8
?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	01H
	DD	00H
	DD	01H
	DD	00H
__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$4 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$1
__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$5 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$0
__tryblocktable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z DD 02H
	DD	02H
	DD	03H
	DD	01H
	DD	FLAT:__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$4
	DD	00H
	DD	00H
	DD	03H
	DD	01H
	DD	FLAT:__catchsym$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$5
__ehfuncinfo$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z DD 019930522H
	DD	04H
	DD	FLAT:__unwindtable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
	DD	02H
	DD	FLAT:__tryblocktable$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
_TEXT	SEGMENT
_this$ = -28						; size = 4
__Newres$ = -24						; size = 4
__Ptr$ = -20						; size = 4
__$EHRec$ = -16						; size = 16
__Newsize$ = 8						; size = 4
__Oldlen$ = 12						; size = 4
?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy, COMDAT
; _this$ = ecx

; 2083 : 		{	// copy _Oldlen elements to newly allocated buffer

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@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 0c	 sub	 esp, 12			; 0000000cH
  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 e4	 mov	 DWORD PTR _this$[ebp], ecx

; 2084 : 		size_type _Newres = _Newsize | _ALLOC_MASK;

  0002f	8b 45 08	 mov	 eax, DWORD PTR __Newsize$[ebp]
  00032	83 c8 0f	 or	 eax, 15			; 0000000fH
  00035	89 45 e8	 mov	 DWORD PTR __Newres$[ebp], eax

; 2085 : 		if (max_size() < _Newres)

  00038	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0003b	e8 00 00 00 00	 call	 ?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size
  00040	3b 45 e8	 cmp	 eax, DWORD PTR __Newres$[ebp]
  00043	73 08		 jae	 SHORT $LN6@Copy

; 2086 : 			_Newres = _Newsize;	// undo roundup if too big

  00045	8b 4d 08	 mov	 ecx, DWORD PTR __Newsize$[ebp]
  00048	89 4d e8	 mov	 DWORD PTR __Newres$[ebp], ecx

; 2087 : 		else if (_Newres / 3 < _Myres / 2

  0004b	eb 43		 jmp	 SHORT $LN5@Copy
$LN6@Copy:

; 2088 : 			&& _Myres <= max_size() - _Myres / 2)

  0004d	8b 45 e8	 mov	 eax, DWORD PTR __Newres$[ebp]
  00050	33 d2		 xor	 edx, edx
  00052	b9 03 00 00 00	 mov	 ecx, 3
  00057	f7 f1		 div	 ecx
  00059	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  0005c	8b 4a 18	 mov	 ecx, DWORD PTR [edx+24]
  0005f	d1 e9		 shr	 ecx, 1
  00061	3b c1		 cmp	 eax, ecx
  00063	73 2b		 jae	 SHORT $LN5@Copy
  00065	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  00068	e8 00 00 00 00	 call	 ?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size
  0006d	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  00070	8b 4a 18	 mov	 ecx, DWORD PTR [edx+24]
  00073	d1 e9		 shr	 ecx, 1
  00075	2b c1		 sub	 eax, ecx
  00077	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  0007a	39 42 18	 cmp	 DWORD PTR [edx+24], eax
  0007d	77 11		 ja	 SHORT $LN5@Copy

; 2089 : 			_Newres = _Myres + _Myres / 2;	// grow exponentially if possible

  0007f	8b 45 e4	 mov	 eax, DWORD PTR _this$[ebp]
  00082	8b 48 18	 mov	 ecx, DWORD PTR [eax+24]
  00085	d1 e9		 shr	 ecx, 1
  00087	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  0008a	03 4a 18	 add	 ecx, DWORD PTR [edx+24]
  0008d	89 4d e8	 mov	 DWORD PTR __Newres$[ebp], ecx
$LN5@Copy:

; 2090 : 		_Elem *_Ptr = 0;

  00090	c7 45 ec 00 00
	00 00		 mov	 DWORD PTR __Ptr$[ebp], 0

; 2091 : 
; 2092 : 		_TRY_BEGIN

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

; 2093 : 			_Ptr = _Mybase::_Alval.allocate(_Newres + 1);

  0009e	8b 45 e8	 mov	 eax, DWORD PTR __Newres$[ebp]
  000a1	83 c0 01	 add	 eax, 1
  000a4	50		 push	 eax
  000a5	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  000a8	e8 00 00 00 00	 call	 ?allocate@?$allocator@D@std@@QAEPADI@Z ; std::allocator<char>::allocate
  000ad	89 45 ec	 mov	 DWORD PTR __Ptr$[ebp], eax
  000b0	eb 57		 jmp	 SHORT $LN9@Copy
__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$0:

; 2094 : 		_CATCH_ALL

  000b2	89 65 f0	 mov	 DWORD PTR __$EHRec$[ebp], esp

; 2095 : 			_Newres = _Newsize;	// allocation failed, undo roundup and retry

  000b5	8b 4d 08	 mov	 ecx, DWORD PTR __Newsize$[ebp]
  000b8	89 4d e8	 mov	 DWORD PTR __Newres$[ebp], ecx

; 2096 : 			_TRY_BEGIN

  000bb	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+12], 2

; 2097 : 				_Ptr = _Mybase::_Alval.allocate(_Newres + 1);

  000bf	8b 55 e8	 mov	 edx, DWORD PTR __Newres$[ebp]
  000c2	83 c2 01	 add	 edx, 1
  000c5	52		 push	 edx
  000c6	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  000c9	e8 00 00 00 00	 call	 ?allocate@?$allocator@D@std@@QAEPADI@Z ; std::allocator<char>::allocate
  000ce	89 45 ec	 mov	 DWORD PTR __Ptr$[ebp], eax
  000d1	eb 22		 jmp	 SHORT $LN11@Copy
__catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$1:

; 2098 : 			_CATCH_ALL
; 2099 : 			_Tidy(true);	// failed again, discard storage and reraise

  000d3	6a 00		 push	 0
  000d5	6a 01		 push	 1
  000d7	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  000da	e8 00 00 00 00	 call	 ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy

; 2100 : 			_RERAISE;

  000df	6a 00		 push	 0
  000e1	6a 00		 push	 0
  000e3	e8 00 00 00 00	 call	 __CxxThrowException@8

; 2101 : 			_CATCH_END

  000e8	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 1
  000ef	b8 00 00 00 00	 mov	 eax, __tryend$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$2
  000f4	c3		 ret	 0
$LN11@Copy:
  000f5	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 1
__tryend$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$2:

; 2102 : 		_CATCH_END

  000fc	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 1
  00103	b8 00 00 00 00	 mov	 eax, __tryend$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$3
  00108	c3		 ret	 0
$LN9@Copy:
  00109	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
__tryend$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z$3:

; 2103 : 
; 2104 : 		if (0 < _Oldlen)

  00110	83 7d 0c 00	 cmp	 DWORD PTR __Oldlen$[ebp], 0
  00114	76 20		 jbe	 SHORT $LN1@Copy

; 2105 : 			_Traits_helper::copy_s<_Traits>(_Ptr, _Newres + 1, _Myptr(), _Oldlen);	// copy existing elements

  00116	8b 45 0c	 mov	 eax, DWORD PTR __Oldlen$[ebp]
  00119	50		 push	 eax
  0011a	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0011d	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00122	50		 push	 eax
  00123	8b 4d e8	 mov	 ecx, DWORD PTR __Newres$[ebp]
  00126	83 c1 01	 add	 ecx, 1
  00129	51		 push	 ecx
  0012a	8b 55 ec	 mov	 edx, DWORD PTR __Ptr$[ebp]
  0012d	52		 push	 edx
  0012e	e8 00 00 00 00	 call	 ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
  00133	83 c4 10	 add	 esp, 16			; 00000010H
$LN1@Copy:

; 2106 : 		_Tidy(true);

  00136	6a 00		 push	 0
  00138	6a 01		 push	 1
  0013a	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0013d	e8 00 00 00 00	 call	 ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy

; 2107 : 		_Bx._Ptr = _Ptr;

  00142	8b 45 e4	 mov	 eax, DWORD PTR _this$[ebp]
  00145	8b 4d ec	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  00148	89 48 04	 mov	 DWORD PTR [eax+4], ecx

; 2108 : 		_Myres = _Newres;

  0014b	8b 55 e4	 mov	 edx, DWORD PTR _this$[ebp]
  0014e	8b 45 e8	 mov	 eax, DWORD PTR __Newres$[ebp]
  00151	89 42 18	 mov	 DWORD PTR [edx+24], eax

; 2109 : 		_Eos(_Oldlen);

  00154	8b 4d 0c	 mov	 ecx, DWORD PTR __Oldlen$[ebp]
  00157	51		 push	 ecx
  00158	8b 4d e4	 mov	 ecx, DWORD PTR _this$[ebp]
  0015b	e8 00 00 00 00	 call	 ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
$LN8@Copy:

; 2110 : 		}

  00160	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp+4]
  00163	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0016a	59		 pop	 ecx
  0016b	5f		 pop	 edi
  0016c	5e		 pop	 esi
  0016d	5b		 pop	 ebx
  0016e	8b e5		 mov	 esp, ebp
  00170	5d		 pop	 ebp
  00171	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__ehhandler$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@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 e0	 mov	 ecx, DWORD PTR [edx-32]
  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$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z
  00016	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
; Function compile flags: /Odtp
;	COMDAT ?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
__Newsize$138686 = -4					; size = 4
__Off$ = 8						; size = 4
__Count$ = 12						; size = 4
?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase, COMDAT
; _this$ = ecx

; 1262 : 		{	// erase elements [_Off, _Off + _Count)

  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

; 1263 : 		if (_Mysize < _Off)

  00009	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	8b 48 14	 mov	 ecx, DWORD PTR [eax+20]
  0000f	3b 4d 08	 cmp	 ecx, DWORD PTR __Off$[ebp]
  00012	73 05		 jae	 SHORT $LN3@erase@24

; 1264 : 			_String_base::_Xran();	// _Off off end

  00014	e8 00 00 00 00	 call	 ?_Xran@_String_base@std@@SAXXZ ; std::_String_base::_Xran
$LN3@erase@24:

; 1265 : 		if (_Mysize - _Off < _Count)

  00019	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0001c	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  0001f	2b 45 08	 sub	 eax, DWORD PTR __Off$[ebp]
  00022	3b 45 0c	 cmp	 eax, DWORD PTR __Count$[ebp]
  00025	73 0c		 jae	 SHORT $LN2@erase@24

; 1266 : 			_Count = _Mysize - _Off;	// trim _Count

  00027	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0002a	8b 51 14	 mov	 edx, DWORD PTR [ecx+20]
  0002d	2b 55 08	 sub	 edx, DWORD PTR __Off$[ebp]
  00030	89 55 0c	 mov	 DWORD PTR __Count$[ebp], edx
$LN2@erase@24:

; 1267 : 		if (0 < _Count)

  00033	83 7d 0c 00	 cmp	 DWORD PTR __Count$[ebp], 0
  00037	76 52		 jbe	 SHORT $LN1@erase@24

; 1268 : 			{	// move elements down
; 1269 : 			_Traits_helper::move_s<_Traits>(_Myptr() + _Off, _Myres - _Off, _Myptr() + _Off + _Count,
; 1270 : 				_Mysize - _Off - _Count);

  00039	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0003c	8b 48 14	 mov	 ecx, DWORD PTR [eax+20]
  0003f	2b 4d 08	 sub	 ecx, DWORD PTR __Off$[ebp]
  00042	2b 4d 0c	 sub	 ecx, DWORD PTR __Count$[ebp]
  00045	51		 push	 ecx
  00046	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00049	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  0004e	03 45 08	 add	 eax, DWORD PTR __Off$[ebp]
  00051	03 45 0c	 add	 eax, DWORD PTR __Count$[ebp]
  00054	50		 push	 eax
  00055	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  00058	8b 42 18	 mov	 eax, DWORD PTR [edx+24]
  0005b	2b 45 08	 sub	 eax, DWORD PTR __Off$[ebp]
  0005e	50		 push	 eax
  0005f	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00062	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00067	03 45 08	 add	 eax, DWORD PTR __Off$[ebp]
  0006a	50		 push	 eax
  0006b	e8 00 00 00 00	 call	 ??$move_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::move_s<std::char_traits<char> >
  00070	83 c4 10	 add	 esp, 16			; 00000010H

; 1271 : 			size_type _Newsize = _Mysize - _Count;

  00073	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00076	8b 51 14	 mov	 edx, DWORD PTR [ecx+20]
  00079	2b 55 0c	 sub	 edx, DWORD PTR __Count$[ebp]
  0007c	89 55 fc	 mov	 DWORD PTR __Newsize$138686[ebp], edx

; 1272 : 			_Eos(_Newsize);

  0007f	8b 45 fc	 mov	 eax, DWORD PTR __Newsize$138686[ebp]
  00082	50		 push	 eax
  00083	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00086	e8 00 00 00 00	 call	 ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
$LN1@erase@24:

; 1273 : 			}
; 1274 : 		return (*this);

  0008b	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]

; 1275 : 		}

  0008e	8b e5		 mov	 esp, ebp
  00090	5d		 pop	 ebp
  00091	c2 08 00	 ret	 8
?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectfilters.cpp
_TEXT	ENDS
;	COMDAT ?adjustAspect@CCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
tv71 = -20						; size = 8
_this$ = -12						; size = 4
_MaterialAspect$ = -8					; size = 8
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CCropAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 278  : {

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

; 279  :     #ifdef __ASPECTFILTER_DEBUG__
; 280  :         LOG(2,_T("PRE FILTER VALUES: %s"),this->getFilterName());
; 281  :         ar.DebugDump();
; 282  :     #endif
; 283  : 
; 284  :     double MaterialAspect = AspectSettings.SourceAspect ? (AspectSettings.SourceAspect/1000.0) : ar.m_CurrentOverlayDestRect.targetAspect();

  00009	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A, 0
  00010	74 11		 je	 SHORT $LN6@adjustAspe@5
  00012	db 05 00 00 00
	00		 fild	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A
  00018	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@408f400000000000
  0001e	dd 5d ec	 fstp	 QWORD PTR tv71[ebp]
  00021	eb 0e		 jmp	 SHORT $LN7@adjustAspe@5
$LN6@adjustAspe@5:
  00023	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00026	83 c1 50	 add	 ecx, 80			; 00000050H
  00029	e8 00 00 00 00	 call	 ?targetAspect@CAspectRect@@QAENXZ ; CAspectRect::targetAspect
  0002e	dd 5d ec	 fstp	 QWORD PTR tv71[ebp]
$LN7@adjustAspe@5:
  00031	dd 45 ec	 fld	 QWORD PTR tv71[ebp]
  00034	dd 5d f8	 fstp	 QWORD PTR _MaterialAspect$[ebp]

; 285  : 
; 286  :     if(AspectSettings.SourceAspectAdjust != 1000)

  00037	81 3d f0 00 00
	00 e8 03 00 00	 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+240, 1000 ; 000003e8H
  00041	74 12		 je	 SHORT $LN3@adjustAspe@5

; 287  :     {
; 288  :         MaterialAspect *= (double)AspectSettings.SourceAspectAdjust / 1000.0;

  00043	db 05 f0 00 00
	00		 fild	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+240
  00049	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@408f400000000000
  0004f	dc 4d f8	 fmul	 QWORD PTR _MaterialAspect$[ebp]
  00052	dd 5d f8	 fstp	 QWORD PTR _MaterialAspect$[ebp]
$LN3@adjustAspe@5:

; 289  :     }
; 290  : 
; 291  :     // Crop the source rectangle down to the desired aspect...
; 292  :     if (AspectSettings.SquarePixels)

  00055	83 3d f8 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+248, 0
  0005c	74 16		 je	 SHORT $LN2@adjustAspe@5

; 293  :     {
; 294  :         ar.m_CurrentOverlaySrcRect.adjustTargetAspectByGrowth(MaterialAspect);

  0005e	83 ec 08	 sub	 esp, 8
  00061	dd 45 f8	 fld	 QWORD PTR _MaterialAspect$[ebp]
  00064	dd 1c 24	 fstp	 QWORD PTR [esp]
  00067	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  0006a	83 c1 68	 add	 ecx, 104		; 00000068H
  0006d	e8 00 00 00 00	 call	 ?adjustTargetAspectByGrowth@CAspectRect@@QAEXN@Z ; CAspectRect::adjustTargetAspectByGrowth

; 295  :     }
; 296  :     else

  00072	eb 14		 jmp	 SHORT $LN1@adjustAspe@5
$LN2@adjustAspe@5:

; 297  :     {
; 298  :         ar.m_CurrentOverlaySrcRect.adjustTargetAspectByShrink(MaterialAspect);

  00074	83 ec 08	 sub	 esp, 8
  00077	dd 45 f8	 fld	 QWORD PTR _MaterialAspect$[ebp]
  0007a	dd 1c 24	 fstp	 QWORD PTR [esp]
  0007d	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00080	83 c1 68	 add	 ecx, 104		; 00000068H
  00083	e8 00 00 00 00	 call	 ?adjustTargetAspectByShrink@CAspectRect@@QAEXN@Z ; CAspectRect::adjustTargetAspectByShrink
$LN1@adjustAspe@5:

; 299  :     }
; 300  : 
; 301  :     // Crop the destination rectangle
; 302  :     // Bouncers are used to position the target rectangle within the cropped region...
; 303  :     ar.m_CurrentOverlayDestRect.adjustTargetAspectByShrink(MaterialAspect);

  00088	83 ec 08	 sub	 esp, 8
  0008b	dd 45 f8	 fld	 QWORD PTR _MaterialAspect$[ebp]
  0008e	dd 1c 24	 fstp	 QWORD PTR [esp]
  00091	8b 4d 08	 mov	 ecx, DWORD PTR _ar$[ebp]
  00094	83 c1 50	 add	 ecx, 80			; 00000050H
  00097	e8 00 00 00 00	 call	 ?adjustTargetAspectByShrink@CAspectRect@@QAEXN@Z ; CAspectRect::adjustTargetAspectByShrink

; 304  : 
; 305  :     #ifdef __ASPECTFILTER_DEBUG__
; 306  :         LOG(2,_T("POST FILTER VALUES: %s"),this->getFilterName());
; 307  :         ar.DebugDump();
; 308  :     #endif
; 309  : }

  0009c	8b e5		 mov	 esp, ebp
  0009e	5d		 pop	 ebp
  0009f	c2 08 00	 ret	 8
?adjustAspect@CCropAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CCropAspectFilter::adjustAspect
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	COMDAT ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >, COMDAT
; _this$ = ecx

; 905  : 		{	// destroy the string

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

; 906  : 		_Tidy(true);

  00007	6a 00		 push	 0
  00009	6a 01		 push	 1
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy

; 907  : 		}

  00013	8b e5		 mov	 esp, ebp
  00015	5d		 pop	 ebp
  00016	c3		 ret	 0
??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z
_TEXT	SEGMENT
tv80 = -8						; size = 4
_this$ = -4						; size = 4
__Newsize$ = 8						; size = 4
__Trim$ = 12						; size = 1
?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow, COMDAT
; _this$ = ecx

; 2119 : 		{	// ensure buffer is big enough, trim to size if _Trim is true

  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

; 2120 : 			if (max_size() < _Newsize)

  00009	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	e8 00 00 00 00	 call	 ?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::max_size
  00011	3b 45 08	 cmp	 eax, DWORD PTR __Newsize$[ebp]
  00014	73 05		 jae	 SHORT $LN6@Grow@2

; 2121 : 			_String_base::_Xlen();	// result too long

  00016	e8 00 00 00 00	 call	 ?_Xlen@_String_base@std@@SAXXZ ; std::_String_base::_Xlen
$LN6@Grow@2:

; 2122 : 		if (_Myres < _Newsize)

  0001b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001e	8b 48 18	 mov	 ecx, DWORD PTR [eax+24]
  00021	3b 4d 08	 cmp	 ecx, DWORD PTR __Newsize$[ebp]
  00024	73 15		 jae	 SHORT $LN5@Grow@2

; 2123 : 			_Copy(_Newsize, _Mysize);	// reallocate to grow

  00026	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00029	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  0002c	50		 push	 eax
  0002d	8b 4d 08	 mov	 ecx, DWORD PTR __Newsize$[ebp]
  00030	51		 push	 ecx
  00031	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00034	e8 00 00 00 00	 call	 ?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXII@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Copy
  00039	eb 4a		 jmp	 SHORT $LN4@Grow@2
$LN5@Grow@2:

; 2124 : 		else if (_Trim && _Newsize < _BUF_SIZE)

  0003b	0f b6 55 0c	 movzx	 edx, BYTE PTR __Trim$[ebp]
  0003f	85 d2		 test	 edx, edx
  00041	74 32		 je	 SHORT $LN3@Grow@2
  00043	83 7d 08 10	 cmp	 DWORD PTR __Newsize$[ebp], 16 ; 00000010H
  00047	73 2c		 jae	 SHORT $LN3@Grow@2

; 2125 : 			_Tidy(true,	// copy and deallocate if trimming to small string
; 2126 : 				_Newsize < _Mysize ? _Newsize : _Mysize);

  00049	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0004c	8b 4d 08	 mov	 ecx, DWORD PTR __Newsize$[ebp]
  0004f	3b 48 14	 cmp	 ecx, DWORD PTR [eax+20]
  00052	73 08		 jae	 SHORT $LN9@Grow@2
  00054	8b 55 08	 mov	 edx, DWORD PTR __Newsize$[ebp]
  00057	89 55 f8	 mov	 DWORD PTR tv80[ebp], edx
  0005a	eb 09		 jmp	 SHORT $LN10@Grow@2
$LN9@Grow@2:
  0005c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0005f	8b 48 14	 mov	 ecx, DWORD PTR [eax+20]
  00062	89 4d f8	 mov	 DWORD PTR tv80[ebp], ecx
$LN10@Grow@2:
  00065	8b 55 f8	 mov	 edx, DWORD PTR tv80[ebp]
  00068	52		 push	 edx
  00069	6a 01		 push	 1
  0006b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0006e	e8 00 00 00 00	 call	 ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy
  00073	eb 10		 jmp	 SHORT $LN4@Grow@2
$LN3@Grow@2:

; 2127 : 		else if (_Newsize == 0)

  00075	83 7d 08 00	 cmp	 DWORD PTR __Newsize$[ebp], 0
  00079	75 0a		 jne	 SHORT $LN4@Grow@2

; 2128 : 			_Eos(0);	// new size is zero, just null terminate

  0007b	6a 00		 push	 0
  0007d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00080	e8 00 00 00 00	 call	 ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
$LN4@Grow@2:

; 2129 : 		return (0 < _Newsize);	// return true only if more work to do

  00085	33 c0		 xor	 eax, eax
  00087	3b 45 08	 cmp	 eax, DWORD PTR __Newsize$[ebp]
  0008a	1b c0		 sbb	 eax, eax
  0008c	f7 d8		 neg	 eax

; 2130 : 		}

  0008e	8b e5		 mov	 esp, ebp
  00090	5d		 pop	 ebp
  00091	c2 08 00	 ret	 8
?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
xdata$x	SEGMENT
__unwindtable$??1logic_error@std@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1logic_error@std@@UAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??1logic_error@std@@UAE@XZ$1
__ehfuncinfo$??1logic_error@std@@UAE@XZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??1logic_error@std@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1logic_error@std@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1logic_error@std@@UAE@XZ PROC				; std::logic_error::~logic_error, COMDAT
; _this$ = ecx

; 30   : 		{	// 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$??1logic_error@std@@UAE@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	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00029	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7logic_error@std@@6B@
  0002f	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1

; 31   : 		}

  00036	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  0003a	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003d	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00040	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> >
  00045	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0004c	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0004f	e8 00 00 00 00	 call	 ??1exception@std@@UAE@XZ ; std::exception::~exception
  00054	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00057	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0005e	59		 pop	 ecx
  0005f	8b e5		 mov	 esp, ebp
  00061	5d		 pop	 ebp
  00062	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1logic_error@std@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__unwindfunclet$??1logic_error@std@@UAE@XZ$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000e	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$??1logic_error@std@@UAE@XZ:
  00013	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00017	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001a	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  0001d	33 c8		 xor	 ecx, eax
  0001f	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00024	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1logic_error@std@@UAE@XZ
  00029	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1logic_error@std@@UAE@XZ ENDP				; std::logic_error::~logic_error
; Function compile flags: /Odtp
;	COMDAT ??_Glogic_error@std@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_Glogic_error@std@@UAEPAXI@Z PROC			; std::logic_error::`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	 ??1logic_error@std@@UAE@XZ ; std::logic_error::~logic_error
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@132
  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@132:
  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
??_Glogic_error@std@@UAEPAXI@Z ENDP			; std::logic_error::`scalar deleting destructor'
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
__Num$ = -4						; size = 4
__Right$ = 8						; size = 4
__Roff$ = 12						; size = 4
__Count$ = 16						; size = 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign, COMDAT
; _this$ = ecx

; 1046 : 		{	// assign _Right [_Roff, _Roff + _Count)

  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

; 1047 : 		if (_Right.size() < _Roff)

  00009	8b 4d 08	 mov	 ecx, DWORD PTR __Right$[ebp]
  0000c	e8 00 00 00 00	 call	 ?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size
  00011	3b 45 0c	 cmp	 eax, DWORD PTR __Roff$[ebp]
  00014	73 05		 jae	 SHORT $LN5@assign@3

; 1048 : 			_String_base::_Xran();	// _Roff off end

  00016	e8 00 00 00 00	 call	 ?_Xran@_String_base@std@@SAXXZ ; std::_String_base::_Xran
$LN5@assign@3:

; 1049 : 		size_type _Num = _Right.size() - _Roff;

  0001b	8b 4d 08	 mov	 ecx, DWORD PTR __Right$[ebp]
  0001e	e8 00 00 00 00	 call	 ?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::size
  00023	2b 45 0c	 sub	 eax, DWORD PTR __Roff$[ebp]
  00026	89 45 fc	 mov	 DWORD PTR __Num$[ebp], eax

; 1050 : 		if (_Count < _Num)

  00029	8b 45 10	 mov	 eax, DWORD PTR __Count$[ebp]
  0002c	3b 45 fc	 cmp	 eax, DWORD PTR __Num$[ebp]
  0002f	73 06		 jae	 SHORT $LN4@assign@3

; 1051 : 			_Num = _Count;	// trim _Num to size

  00031	8b 4d 10	 mov	 ecx, DWORD PTR __Count$[ebp]
  00034	89 4d fc	 mov	 DWORD PTR __Num$[ebp], ecx
$LN4@assign@3:

; 1052 : 
; 1053 : 		if (this == &_Right)

  00037	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  0003a	3b 55 08	 cmp	 edx, DWORD PTR __Right$[ebp]
  0003d	75 25		 jne	 SHORT $LN3@assign@3

; 1054 : 			erase((size_type)(_Roff + _Num)), erase(0, _Roff);	// substring

  0003f	a1 00 00 00 00	 mov	 eax, DWORD PTR ?npos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@2IB ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::npos
  00044	50		 push	 eax
  00045	8b 4d 0c	 mov	 ecx, DWORD PTR __Roff$[ebp]
  00048	03 4d fc	 add	 ecx, DWORD PTR __Num$[ebp]
  0004b	51		 push	 ecx
  0004c	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0004f	e8 00 00 00 00	 call	 ?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
  00054	8b 55 0c	 mov	 edx, DWORD PTR __Roff$[ebp]
  00057	52		 push	 edx
  00058	6a 00		 push	 0
  0005a	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0005d	e8 00 00 00 00	 call	 ?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::erase
  00062	eb 49		 jmp	 SHORT $LN2@assign@3
$LN3@assign@3:

; 1055 : 		else if (_Grow(_Num))

  00064	6a 00		 push	 0
  00066	8b 45 fc	 mov	 eax, DWORD PTR __Num$[ebp]
  00069	50		 push	 eax
  0006a	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0006d	e8 00 00 00 00	 call	 ?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow
  00072	0f b6 c8	 movzx	 ecx, al
  00075	85 c9		 test	 ecx, ecx
  00077	74 34		 je	 SHORT $LN2@assign@3

; 1056 : 			{	// make room and assign new stuff
; 1057 : 			_Traits_helper::copy_s<_Traits>(_Myptr(), _Myres, _Right._Myptr() + _Roff, _Num);

  00079	8b 55 fc	 mov	 edx, DWORD PTR __Num$[ebp]
  0007c	52		 push	 edx
  0007d	8b 4d 08	 mov	 ecx, DWORD PTR __Right$[ebp]
  00080	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IBEPBDXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00085	03 45 0c	 add	 eax, DWORD PTR __Roff$[ebp]
  00088	50		 push	 eax
  00089	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0008c	8b 48 18	 mov	 ecx, DWORD PTR [eax+24]
  0008f	51		 push	 ecx
  00090	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00093	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00098	50		 push	 eax
  00099	e8 00 00 00 00	 call	 ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
  0009e	83 c4 10	 add	 esp, 16			; 00000010H

; 1058 : 			_Eos(_Num);

  000a1	8b 55 fc	 mov	 edx, DWORD PTR __Num$[ebp]
  000a4	52		 push	 edx
  000a5	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  000a8	e8 00 00 00 00	 call	 ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
$LN2@assign@3:

; 1059 : 			}
; 1060 : 		return (*this);

  000ad	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]

; 1061 : 		}

  000b0	8b e5		 mov	 esp, ebp
  000b2	5d		 pop	 ebp
  000b3	c2 0c 00	 ret	 12			; 0000000cH
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
__Count$ = 12						; size = 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign, COMDAT
; _this$ = ecx

; 1064 : 		{	// assign [_Ptr, _Ptr + _Count)

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

; 1065 : 
; 1066 :  #if _HAS_ITERATOR_DEBUGGING
; 1067 : 		if (_Count != 0)
; 1068 : 			_DEBUG_POINTER(_Ptr);
; 1069 :  #endif /* _HAS_ITERATOR_DEBUGGING */
; 1070 : 
; 1071 : 		if (_Inside(_Ptr))

  00007	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ?_Inside@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NPBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Inside
  00013	0f b6 c8	 movzx	 ecx, al
  00016	85 c9		 test	 ecx, ecx
  00018	74 20		 je	 SHORT $LN2@assign@4

; 1072 : 			return (assign(*this, _Ptr - _Myptr(), _Count));	// substring

  0001a	8b 55 0c	 mov	 edx, DWORD PTR __Count$[ebp]
  0001d	52		 push	 edx
  0001e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00021	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00026	8b 4d 08	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  00029	2b c8		 sub	 ecx, eax
  0002b	51		 push	 ecx
  0002c	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  0002f	52		 push	 edx
  00030	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00033	e8 00 00 00 00	 call	 ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
  00038	eb 44		 jmp	 SHORT $LN3@assign@4
$LN2@assign@4:

; 1073 : 
; 1074 : 		if (_Grow(_Count))

  0003a	6a 00		 push	 0
  0003c	8b 45 0c	 mov	 eax, DWORD PTR __Count$[ebp]
  0003f	50		 push	 eax
  00040	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00043	e8 00 00 00 00	 call	 ?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Grow
  00048	0f b6 c8	 movzx	 ecx, al
  0004b	85 c9		 test	 ecx, ecx
  0004d	74 2c		 je	 SHORT $LN1@assign@4

; 1075 : 			{	// make room and assign new stuff
; 1076 : 			_Traits_helper::copy_s<_Traits>(_Myptr(), _Myres, _Ptr, _Count);

  0004f	8b 55 0c	 mov	 edx, DWORD PTR __Count$[ebp]
  00052	52		 push	 edx
  00053	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  00056	50		 push	 eax
  00057	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0005a	8b 51 18	 mov	 edx, DWORD PTR [ecx+24]
  0005d	52		 push	 edx
  0005e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00061	e8 00 00 00 00	 call	 ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEPADXZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Myptr
  00066	50		 push	 eax
  00067	e8 00 00 00 00	 call	 ??$copy_s@U?$char_traits@D@std@@@_Traits_helper@std@@YAPADPADIPBDI@Z ; std::_Traits_helper::copy_s<std::char_traits<char> >
  0006c	83 c4 10	 add	 esp, 16			; 00000010H

; 1077 : 			_Eos(_Count);

  0006f	8b 45 0c	 mov	 eax, DWORD PTR __Count$[ebp]
  00072	50		 push	 eax
  00073	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00076	e8 00 00 00 00	 call	 ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Eos
$LN1@assign@4:

; 1078 : 			}
; 1079 : 		return (*this);

  0007b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
$LN3@assign@4:

; 1080 : 		}

  0007e	8b e5		 mov	 esp, ebp
  00080	5d		 pop	 ebp
  00081	c2 08 00	 ret	 8
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
_TEXT	ENDS
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
xdata$x	SEGMENT
__unwindtable$??1length_error@std@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1length_error@std@@UAE@XZ$0
__ehfuncinfo$??1length_error@std@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1length_error@std@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1length_error@std@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1length_error@std@@UAE@XZ PROC			; std::length_error::~length_error, COMDAT
; _this$ = ecx

; 109  : 		{	// 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$??1length_error@std@@UAE@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	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00029	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7length_error@std@@6B@
  0002f	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 110  : 		}

  00036	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0003d	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00040	e8 00 00 00 00	 call	 ??1logic_error@std@@UAE@XZ ; std::logic_error::~logic_error
  00045	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00048	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0004f	59		 pop	 ecx
  00050	8b e5		 mov	 esp, ebp
  00052	5d		 pop	 ebp
  00053	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1length_error@std@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1logic_error@std@@UAE@XZ ; std::logic_error::~logic_error
__ehhandler$??1length_error@std@@UAE@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$??1length_error@std@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1length_error@std@@UAE@XZ ENDP			; std::length_error::~length_error
; Function compile flags: /Odtp
;	COMDAT ??_Glength_error@std@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_Glength_error@std@@UAEPAXI@Z PROC			; std::length_error::`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	 ??1length_error@std@@UAE@XZ ; std::length_error::~length_error
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@161
  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@161:
  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
??_Glength_error@std@@UAEPAXI@Z ENDP			; std::length_error::`scalar deleting destructor'
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
_TEXT	ENDS
;	COMDAT ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Right$ = 8						; size = 4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >, COMDAT
; _this$ = ecx

; 721  : 		{	// construct by copying _Right

  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 08	 mov	 eax, DWORD PTR __Right$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ??0?$_String_val@DV?$allocator@D@std@@@std@@QAE@ABV01@@Z ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >

; 722  : 		_Tidy();

  00013	6a 00		 push	 0
  00015	6a 00		 push	 0
  00017	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001a	e8 00 00 00 00	 call	 ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy

; 723  : 		assign(_Right, 0, npos);

  0001f	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?npos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@2IB ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::npos
  00025	51		 push	 ecx
  00026	6a 00		 push	 0
  00028	8b 55 08	 mov	 edx, DWORD PTR __Right$[ebp]
  0002b	52		 push	 edx
  0002c	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0002f	e8 00 00 00 00	 call	 ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign

; 724  : 		}

  00034	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00037	8b e5		 mov	 esp, ebp
  00039	5d		 pop	 ebp
  0003a	c2 04 00	 ret	 4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Ptr$ = 8						; size = 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign, COMDAT
; _this$ = ecx

; 1083 : 		{	// assign [_Ptr, <null>)

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

; 1084 : 		_DEBUG_POINTER(_Ptr);
; 1085 : 		return (assign(_Ptr, _Traits::length(_Ptr)));

  00007	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  0000a	50		 push	 eax
  0000b	e8 00 00 00 00	 call	 ?length@?$char_traits@D@std@@SAIPBD@Z ; std::char_traits<char>::length
  00010	83 c4 04	 add	 esp, 4
  00013	50		 push	 eax
  00014	8b 4d 08	 mov	 ecx, DWORD PTR __Ptr$[ebp]
  00017	51		 push	 ecx
  00018	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001b	e8 00 00 00 00	 call	 ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign

; 1086 : 		}

  00020	8b e5		 mov	 esp, ebp
  00022	5d		 pop	 ebp
  00023	c2 04 00	 ret	 4
?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0logic_error@std@@QAE@ABV01@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0logic_error@std@@QAE@ABV01@@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0logic_error@std@@QAE@ABV01@@Z$1
__ehfuncinfo$??0logic_error@std@@QAE@ABV01@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??0logic_error@std@@QAE@ABV01@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0logic_error@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
___that$ = 8						; size = 4
??0logic_error@std@@QAE@ABV01@@Z PROC			; std::logic_error::logic_error, 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$??0logic_error@std@@QAE@ABV01@@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 45 08	 mov	 eax, DWORD PTR ___that$[ebp]
  00029	50		 push	 eax
  0002a	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	e8 00 00 00 00	 call	 ??0exception@std@@QAE@ABV01@@Z ; std::exception::exception
  00032	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00039	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], OFFSET ??_7logic_error@std@@6B@
  00042	8b 55 08	 mov	 edx, DWORD PTR ___that$[ebp]
  00045	83 c2 0c	 add	 edx, 12			; 0000000cH
  00048	52		 push	 edx
  00049	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0004c	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0004f	e8 00 00 00 00	 call	 ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
  00054	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00058	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0005f	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  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	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0logic_error@std@@QAE@ABV01@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__unwindfunclet$??0logic_error@std@@QAE@ABV01@@Z$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000e	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$??0logic_error@std@@QAE@ABV01@@Z:
  00013	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00017	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001a	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  0001d	33 c8		 xor	 ecx, eax
  0001f	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00024	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0logic_error@std@@QAE@ABV01@@Z
  00029	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0logic_error@std@@QAE@ABV01@@Z ENDP			; std::logic_error::logic_error
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0length_error@std@@QAE@ABV01@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0length_error@std@@QAE@ABV01@@Z$0
__ehfuncinfo$??0length_error@std@@QAE@ABV01@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0length_error@std@@QAE@ABV01@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0length_error@std@@QAE@ABV01@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
___that$ = 8						; size = 4
??0length_error@std@@QAE@ABV01@@Z PROC			; std::length_error::length_error, 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$??0length_error@std@@QAE@ABV01@@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 45 08	 mov	 eax, DWORD PTR ___that$[ebp]
  00029	50		 push	 eax
  0002a	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	e8 00 00 00 00	 call	 ??0logic_error@std@@QAE@ABV01@@Z
  00032	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00039	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], OFFSET ??_7length_error@std@@6B@
  00042	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00049	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0004c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00056	59		 pop	 ecx
  00057	8b e5		 mov	 esp, ebp
  00059	5d		 pop	 ebp
  0005a	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0length_error@std@@QAE@ABV01@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1logic_error@std@@UAE@XZ ; std::logic_error::~logic_error
__ehhandler$??0length_error@std@@QAE@ABV01@@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$??0length_error@std@@QAE@ABV01@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0length_error@std@@QAE@ABV01@@Z ENDP			; std::length_error::length_error
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
xdata$x	SEGMENT
__unwindtable$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$1
__ehfuncinfo$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Message$ = 8						; size = 4
??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z PROC ; std::logic_error::logic_error, COMDAT
; _this$ = ecx

; 26   : 		{	// construct from message string

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@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	 ??0exception@std@@QAE@XZ ; std::exception::exception
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7logic_error@std@@6B@
  0003e	8b 4d 08	 mov	 ecx, DWORD PTR __Message$[ebp]
  00041	51		 push	 ecx
  00042	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00045	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00048	e8 00 00 00 00	 call	 ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
  0004d	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1

; 27   : 		}

  00051	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00058	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0005b	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0005e	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00065	59		 pop	 ecx
  00066	8b e5		 mov	 esp, ebp
  00068	5d		 pop	 ebp
  00069	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1exception@std@@UAE@XZ ; std::exception::~exception
__unwindfunclet$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$1:
  00008	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0000b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000e	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$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z:
  00013	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00017	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001a	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  0001d	33 c8		 xor	 ecx, eax
  0001f	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00024	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
  00029	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ENDP ; std::logic_error::logic_error
; Function compile flags: /Odtp
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\xstring
;	COMDAT ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
__Ptr$ = 8						; size = 4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z PROC ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >, COMDAT
; _this$ = ecx

; 651  : 		{	// construct from [_Ptr, <null>)

  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
  00009	51		 push	 ecx
  0000a	8b cc		 mov	 ecx, esp
  0000c	e8 00 00 00 00	 call	 ??0?$allocator@D@std@@QAE@XZ ; std::allocator<char>::allocator<char>
  00011	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00014	e8 00 00 00 00	 call	 ??0?$_String_val@DV?$allocator@D@std@@@std@@IAE@V?$allocator@D@1@@Z ; std::_String_val<char,std::allocator<char> >::_String_val<char,std::allocator<char> >

; 652  : 		_Tidy();

  00019	6a 00		 push	 0
  0001b	6a 00		 push	 0
  0001d	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00020	e8 00 00 00 00	 call	 ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy

; 653  : 		assign(_Ptr);

  00025	8b 45 08	 mov	 eax, DWORD PTR __Ptr$[ebp]
  00028	50		 push	 eax
  00029	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0002c	e8 00 00 00 00	 call	 ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign

; 654  : 		}

  00031	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  00034	8b e5		 mov	 esp, ebp
  00036	5d		 pop	 ebp
  00037	c2 04 00	 ret	 4
??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ENDP ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdexcept
xdata$x	SEGMENT
__unwindtable$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0
__ehfuncinfo$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
__Message$ = 8						; size = 4
??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z PROC ; std::length_error::length_error, COMDAT
; _this$ = ecx

; 105  : 		{	// construct from message string

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@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 45 08	 mov	 eax, DWORD PTR __Message$[ebp]
  00029	50		 push	 eax
  0002a	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	e8 00 00 00 00	 call	 ??0logic_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ; std::logic_error::logic_error
  00032	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00039	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	c7 01 00 00 00
	00		 mov	 DWORD PTR [ecx], OFFSET ??_7length_error@std@@6B@

; 106  : 		}

  00042	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00049	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0004c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0004f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00056	59		 pop	 ecx
  00057	8b e5		 mov	 esp, ebp
  00059	5d		 pop	 ebp
  0005a	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1logic_error@std@@UAE@XZ ; std::logic_error::~logic_error
__ehhandler$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@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 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$??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0length_error@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z ENDP ; std::length_error::length_error
;	COMDAT xdata$x
; File c:\program files (x86)\microsoft visual studio 9.0\vc\include\vector
xdata$x	SEGMENT
__unwindtable$?_Xlen@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?_Xlen@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ$0
__ehfuncinfo$?_Xlen@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?_Xlen@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ
_TEXT	SEGMENT
$T336106 = -80						; size = 28
$T336105 = -52						; size = 40
__$EHRec$ = -12						; size = 12
?_Xlen@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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 $T336106[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 $T336106[ebp]
  0003c	50		 push	 eax
  0003d	8d 4d cc	 lea	 ecx, DWORD PTR $T336105[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 $T336105[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 $T336106[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:

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ$0:
  00000	8d 4d b0	 lea	 ecx, DWORD PTR $T336106[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?_Xlen@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@KAXXZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Xlen
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z DD 0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$4
	DD	02H
	DD	00H
	DD	02H
	DD	00H
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$5
__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$6 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$0
__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$7 DD 00H
	DD	00H
	DD	00H
	DD	FLAT:__catch$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$2
__tryblocktable$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z DD 00H
	DD	00H
	DD	01H
	DD	01H
	DD	FLAT:__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$6
	DD	03H
	DD	03H
	DD	04H
	DD	01H
	DD	FLAT:__catchsym$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$7
__ehfuncinfo$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z DD 019930522H
	DD	06H
	DD	FLAT:__unwindtable$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z
	DD	02H
	DD	FLAT:__tryblocktable$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z
_TEXT	SEGMENT
tv84 = -56						; size = 4
_this$ = -52						; size = 4
__Tmp$143634 = -48					; size = 8
__Oldend$143635 = -40					; size = 4
__Tmp$143624 = -36					; size = 8
__Newvec$143612 = -28					; size = 4
__Ptr$143613 = -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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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
  00040	e9 1e 03 00 00	 jmp	 $LN14@Insert_n
$LN12@Insert_n:

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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

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

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

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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
  00090	c7 45 c8 00 00
	00 00		 mov	 DWORD PTR tv84[ebp], 0
  00097	eb 0b		 jmp	 SHORT $LN16@Insert_n
$LN15@Insert_n:
  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:
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::size
  000c2	03 45 10	 add	 eax, DWORD PTR __Count$[ebp]
  000c5	89 45 ec	 mov	 DWORD PTR __Capacity$[ebp], eax
$LN7@Insert_n:

; 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@VCAspectFilter@@@@@std@@QAEPAV?$SmartPtr@VCAspectFilter@@@@I@Z ; std::allocator<SmartPtr<CAspectFilter> >::allocate
  000d7	89 45 e4	 mov	 DWORD PTR __Newvec$143612[ebp], eax

; 1179 : 			pointer _Ptr = _Newvec;

  000da	8b 55 e4	 mov	 edx, DWORD PTR __Newvec$143612[ebp]
  000dd	89 55 e8	 mov	 DWORD PTR __Ptr$143613[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$143612[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@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Umove<SmartPtr<CAspectFilter> *>
  000fe	89 45 e8	 mov	 DWORD PTR __Ptr$143613[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$143613[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Ufill
  00115	89 45 e8	 mov	 DWORD PTR __Ptr$143613[ebp], eax

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

  00118	8b 4d e8	 mov	 ecx, DWORD PTR __Ptr$143613[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@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Umove<SmartPtr<CAspectFilter> *>
  0012f	eb 39		 jmp	 SHORT $LN17@Insert_n
__catch$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$0:

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

  00131	8b 55 e8	 mov	 edx, DWORD PTR __Ptr$143613[ebp]
  00134	52		 push	 edx
  00135	8b 45 e4	 mov	 eax, DWORD PTR __Newvec$143612[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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$143612[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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@I@Z ; std::allocator<SmartPtr<CAspectFilter> >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$1
  00169	c3		 ret	 0
$LN17@Insert_n:
  0016a	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+12], -1
__tryend$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@@std@@QAEXPAV?$SmartPtr@VCAspectFilter@@@@I@Z ; std::allocator<SmartPtr<CAspectFilter> >::deallocate
$LN5@Insert_n:

; 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$143612[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$143612[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$143612[ebp]
  001e4	89 48 0c	 mov	 DWORD PTR [eax+12], ecx
  001e7	e9 77 01 00 00	 jmp	 $LN14@Insert_n
$LN8@Insert_n:

; 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

; 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$143624[ebp]
  00208	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@ABV0@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  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@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Umove<SmartPtr<CAspectFilter> *>

; 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$143624[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Ufill
  0025a	eb 35		 jmp	 SHORT $LN19@Insert_n
__catch$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXPAV?$SmartPtr@VCAspectFilter@@@@0@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$3
  00290	c3		 ret	 0
$LN19@Insert_n:
  00291	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+12], 2
__tryend$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@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$143624[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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z ; std::fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >
  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$143624[ebp]
  002d3	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>

; 1231 : 		else

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

; 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$143634[ebp]
  002e4	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@ABV0@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  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$143635[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$143635[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$143635[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@VCAspectFilter@@@@@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV2@00@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Umove<SmartPtr<CAspectFilter> *>
  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$143635[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$143635[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@VCAspectFilter@@@@PAV1@@stdext@@YAPAV?$SmartPtr@VCAspectFilter@@@@PAV1@00@Z ; stdext::_Unchecked_move_backward<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> *>
  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$143634[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@VCAspectFilter@@@@V1@@std@@YAXPAV?$SmartPtr@VCAspectFilter@@@@0ABV1@@Z ; std::fill<SmartPtr<CAspectFilter> *,SmartPtr<CAspectFilter> >
  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$143634[ebp]
  0035e	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
$LN14@Insert_n:

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$4:
  00000	8d 4d dc	 lea	 ecx, DWORD PTR __Tmp$143624[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z$5:
  00008	8d 4d d0	 lea	 ecx, DWORD PTR __Tmp$143634[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__ehhandler$?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?_Insert_n@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Insert_n
; Function compile flags: /Odtp
;	COMDAT ?_Buy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE_NI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
__Capacity$ = 8						; size = 4
?_Buy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE_NI@Z PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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

; 1110 : 			return (false);

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

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::max_size
  00039	3b 45 08	 cmp	 eax, DWORD PTR __Capacity$[ebp]
  0003c	73 07		 jae	 SHORT $LN2@Buy

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

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

; 1113 : 		else

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

; 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@VCAspectFilter@@@@@std@@QAEPAV?$SmartPtr@VCAspectFilter@@@@I@Z ; std::allocator<SmartPtr<CAspectFilter> >::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:

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

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

; 1120 : 		}

  0007a	8b e5		 mov	 esp, ebp
  0007c	5d		 pop	 ebp
  0007d	c2 04 00	 ret	 4
?_Buy@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE_NI@Z ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Buy
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?insert@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@ABV?$SmartPtr@VCAspectFilter@@@@@Z
_TEXT	SEGMENT
tv77 = -28						; size = 4
_this$ = -24						; size = 4
$T336146 = -20						; size = 8
$T336143 = -12						; size = 8
__Off$ = -4						; size = 4
___$ReturnUdt$ = 8					; size = 4
__Where$ = 12						; size = 8
__Val$ = 20						; size = 4
?insert@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@ABV?$SmartPtr@VCAspectFilter@@@@@Z PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::size
  00011	85 c0		 test	 eax, eax
  00013	75 09		 jne	 SHORT $LN3@insert@2
  00015	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR tv77[ebp], 0
  0001c	eb 18		 jmp	 SHORT $LN4@insert@2
$LN3@insert@2:
  0001e	8d 45 f4	 lea	 eax, DWORD PTR $T336143[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEHABV01@@Z ; std::_Vector_const_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::operator-
  00033	89 45 e4	 mov	 DWORD PTR tv77[ebp], eax
$LN4@insert@2:
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEXV?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@IABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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 $T336146[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::begin
  00066	8b c8		 mov	 ecx, eax
  00068	e8 00 00 00 00	 call	 ??H?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBE?AV01@H@Z ; std::_Vector_iterator<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@ABV?$SmartPtr@VCAspectFilter@@@@@Z ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::insert
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z
_TEXT	SEGMENT
_this$ = -28						; size = 4
$T336151 = -24						; size = 8
$T336150 = -16						; size = 8
$T336149 = -8						; size = 8
__Val$ = 8						; size = 4
?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QBEIXZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::capacity
  0001c	3b f0		 cmp	 esi, eax
  0001e	73 1d		 jae	 SHORT $LN2@push_back

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAEPAV?$SmartPtr@VCAspectFilter@@@@PAV3@IABV3@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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
$LN2@push_back:

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

  0003d	8d 55 f0	 lea	 edx, DWORD PTR $T336150[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::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 $T336149[ebp], ecx
  00051	89 55 fc	 mov	 DWORD PTR $T336149[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 $T336149[ebp+4]
  0005b	51		 push	 ecx
  0005c	8b 55 f8	 mov	 edx, DWORD PTR $T336149[ebp]
  0005f	52		 push	 edx
  00060	8d 45 e8	 lea	 eax, DWORD PTR $T336151[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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE?AV?$_Vector_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@V?$_Vector_const_iterator@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@2@ABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::insert
$LN3@push_back:

; 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
_TEXT	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ$0
__ehfuncinfo$??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
_TEXT	SEGMENT
_this$ = -20						; size = 4
$T336154 = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ PROC ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >, 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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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 $T336154[ebp], esp
  0002e	e8 00 00 00 00	 call	 ??0?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@QAE@XZ ; std::allocator<SmartPtr<CAspectFilter> >::allocator<SmartPtr<CAspectFilter> >
  00033	8b 4d ec	 mov	 ecx, DWORD PTR _this$[ebp]
  00036	e8 00 00 00 00	 call	 ??0?$_Vector_val@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@1@@Z ; std::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_Vector_val<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
  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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@IAE_NI@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::_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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
__ehhandler$??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@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@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ENDP ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
PUBLIC	??0CMasterFilterChain@@QAE@HH@Z			; CMasterFilterChain::CMasterFilterChain
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\aspectfilters.cpp
xdata$x	SEGMENT
__unwindtable$??0CMasterFilterChain@@QAE@HH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$2
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$3
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$4
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$5
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$6
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$7
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$8
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$9
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$10
	DD	0aH
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$11
	DD	0aH
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$12
	DD	0aH
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$13
	DD	0aH
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$14
	DD	0aH
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$15
	DD	0aH
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$16
	DD	010H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$17
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$18
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$19
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$20
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$21
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$22
	DD	01H
	DD	FLAT:__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$23
__ehfuncinfo$??0CMasterFilterChain@@QAE@HH@Z DD 019930522H
	DD	018H
	DD	FLAT:__unwindtable$??0CMasterFilterChain@@QAE@HH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CMasterFilterChain@@QAE@HH@Z
_TEXT	SEGMENT
tv496 = -332						; size = 4
tv515 = -328						; size = 4
tv458 = -324						; size = 4
tv493 = -320						; size = 4
tv513 = -316						; size = 4
tv436 = -312						; size = 4
tv490 = -308						; size = 4
tv511 = -304						; size = 4
tv382 = -300						; size = 4
tv487 = -296						; size = 4
tv321 = -292						; size = 4
tv333 = -288						; size = 4
tv483 = -284						; size = 4
tv506 = -280						; size = 4
tv279 = -276						; size = 4
tv256 = -272						; size = 4
tv239 = -268						; size = 4
tv223 = -264						; size = 4
tv235 = -260						; size = 4
tv477 = -256						; size = 4
tv503 = -252						; size = 4
tv212 = -248						; size = 4
tv474 = -244						; size = 4
tv501 = -240						; size = 4
tv188 = -236						; size = 4
tv471 = -232						; size = 4
tv499 = -228						; size = 4
tv165 = -224						; size = 4
tv468 = -220						; size = 4
tv497 = -216						; size = 4
tv135 = -212						; size = 4
_this$ = -208						; size = 4
$T336214 = -204						; size = 4
$T336213 = -200						; size = 4
$T336212 = -196						; size = 8
$T336209 = -188						; size = 4
$T336208 = -184						; size = 4
$T336207 = -180						; size = 8
$T336204 = -172						; size = 4
$T336203 = -168						; size = 4
$T336202 = -164						; size = 8
$T336201 = -156						; size = 4
$T336198 = -152						; size = 4
$T336197 = -148						; size = 4
$T336194 = -144						; size = 4
$T336193 = -140						; size = 4
$T336192 = -136						; size = 4
$T336189 = -132						; size = 4
$T336188 = -128						; size = 4
$T336185 = -124						; size = 4
$T336184 = -120						; size = 4
$T336181 = -116						; size = 4
$T336180 = -112						; size = 4
$T336179 = -108						; size = 8
$T336176 = -100						; size = 4
$T336175 = -96						; size = 4
$T336174 = -92						; size = 8
$T336171 = -84						; size = 4
$T336170 = -80						; size = 4
$T336169 = -76						; size = 8
$T336166 = -68						; size = 4
$T336165 = -64						; size = 4
$T336164 = -60						; size = 8
_UnCropFilter$143134 = -52				; size = 8
_m_XPos$143100 = -44					; size = 8
_m_YPos$143101 = -36					; size = 8
_PosFilter$143093 = -24					; size = 8
_m_Overscan$143070 = -16				; size = 4
__$EHRec$ = -12						; size = 12
_SrcWidth$ = 8						; size = 4
_SrcHeight$ = 12					; size = 4
??0CMasterFilterChain@@QAE@HH@Z PROC			; CMasterFilterChain::CMasterFilterChain, COMDAT
; _this$ = ecx

; 660  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CMasterFilterChain@@QAE@HH@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec 40 01 00
	00		 sub	 esp, 320		; 00000140H
  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 30 ff ff
	ff		 mov	 DWORD PTR _this$[ebp], ecx
  0002e	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00034	e8 00 00 00 00	 call	 ??0CAspectFilter@@QAE@XZ ; CAspectFilter::CAspectFilter
  00039	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00040	8b 85 30 ff ff
	ff		 mov	 eax, DWORD PTR _this$[ebp]
  00046	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CMasterFilterChain@@6B@
  0004c	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00052	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00055	e8 00 00 00 00	 call	 ??0?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
  0005a	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1

; 661  :     if (AspectSettings.bAnalogueBlanking)

  0005e	83 3d 08 01 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+264, 0
  00065	0f 84 8b 00 00
	00		 je	 $LN23@CMasterFil

; 662  :     {
; 663  :         m_FilterChain.push_back(SmartPtr<CAspectFilter>(new CAnalogueBlankingFilter(SrcWidth, SrcHeight)));

  0006b	6a 1c		 push	 28			; 0000001cH
  0006d	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00072	83 c4 04	 add	 esp, 4
  00075	89 45 bc	 mov	 DWORD PTR $T336166[ebp], eax
  00078	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  0007c	83 7d bc 00	 cmp	 DWORD PTR $T336166[ebp], 0
  00080	74 18		 je	 SHORT $LN26@CMasterFil
  00082	8b 4d 0c	 mov	 ecx, DWORD PTR _SrcHeight$[ebp]
  00085	51		 push	 ecx
  00086	8b 55 08	 mov	 edx, DWORD PTR _SrcWidth$[ebp]
  00089	52		 push	 edx
  0008a	8b 4d bc	 mov	 ecx, DWORD PTR $T336166[ebp]
  0008d	e8 00 00 00 00	 call	 ??0CAnalogueBlankingFilter@@QAE@HH@Z ; CAnalogueBlankingFilter::CAnalogueBlankingFilter
  00092	89 85 2c ff ff
	ff		 mov	 DWORD PTR tv135[ebp], eax
  00098	eb 0a		 jmp	 SHORT $LN27@CMasterFil
$LN26@CMasterFil:
  0009a	c7 85 2c ff ff
	ff 00 00 00 00	 mov	 DWORD PTR tv135[ebp], 0
$LN27@CMasterFil:
  000a4	8b 85 2c ff ff
	ff		 mov	 eax, DWORD PTR tv135[ebp]
  000aa	89 45 c0	 mov	 DWORD PTR $T336165[ebp], eax
  000ad	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  000b1	6a 00		 push	 0
  000b3	8b 4d c0	 mov	 ecx, DWORD PTR $T336165[ebp]
  000b6	51		 push	 ecx
  000b7	8d 4d c4	 lea	 ecx, DWORD PTR $T336164[ebp]
  000ba	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  000bf	89 85 28 ff ff
	ff		 mov	 DWORD PTR tv497[ebp], eax
  000c5	8b 95 28 ff ff
	ff		 mov	 edx, DWORD PTR tv497[ebp]
  000cb	89 95 24 ff ff
	ff		 mov	 DWORD PTR tv468[ebp], edx
  000d1	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  000d5	8b 85 24 ff ff
	ff		 mov	 eax, DWORD PTR tv468[ebp]
  000db	50		 push	 eax
  000dc	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  000e2	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000e5	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
  000ea	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  000ee	8d 4d c4	 lea	 ecx, DWORD PTR $T336164[ebp]
  000f1	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
$LN23@CMasterFil:

; 664  :     }
; 665  : 
; 666  :     if (AspectSettings.OrbitEnabled)

  000f6	83 3d b8 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+184, 0
  000fd	0f 84 75 01 00
	00		 je	 $LN22@CMasterFil

; 667  :     {
; 668  :         // TO BE CHANGED (LG) : don't know what to put in m_Overscan
; 669  :         // and why m_Overscan is not used after ?
; 670  :         int m_Overscan = AspectSettings.InitialTopOverscan;

  00103	8b 0d 84 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+132
  00109	89 4d f0	 mov	 DWORD PTR _m_Overscan$143070[ebp], ecx

; 671  :         if (AspectSettings.OrbitEnabled && m_Overscan*2 < AspectSettings.OrbitSize)

  0010c	83 3d b8 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+184, 0
  00113	74 1d		 je	 SHORT $LN21@CMasterFil
  00115	8b 55 f0	 mov	 edx, DWORD PTR _m_Overscan$143070[ebp]
  00118	d1 e2		 shl	 edx, 1
  0011a	3b 15 bc 00 00
	00		 cmp	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+188
  00120	7d 10		 jge	 SHORT $LN21@CMasterFil

; 672  :         {
; 673  :             m_Overscan = (AspectSettings.OrbitSize+1)/2;

  00122	a1 bc 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+188
  00127	83 c0 01	 add	 eax, 1
  0012a	99		 cdq
  0012b	2b c2		 sub	 eax, edx
  0012d	d1 f8		 sar	 eax, 1
  0012f	89 45 f0	 mov	 DWORD PTR _m_Overscan$143070[ebp], eax
$LN21@CMasterFil:

; 674  :         }
; 675  :         m_FilterChain.push_back(SmartPtr<CAspectFilter>(new COverscanAspectFilter(AspectSettings.InitialTopOverscan, AspectSettings.InitialBottomOverscan, AspectSettings.InitialLeftOverscan, AspectSettings.InitialRightOverscan)));

  00132	6a 1c		 push	 28			; 0000001cH
  00134	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00139	83 c4 04	 add	 esp, 4
  0013c	89 45 ac	 mov	 DWORD PTR $T336171[ebp], eax
  0013f	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  00143	83 7d ac 00	 cmp	 DWORD PTR $T336171[ebp], 0
  00147	74 2a		 je	 SHORT $LN28@CMasterFil
  00149	a1 90 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+144
  0014e	50		 push	 eax
  0014f	8b 0d 8c 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+140
  00155	51		 push	 ecx
  00156	8b 15 88 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+136
  0015c	52		 push	 edx
  0015d	a1 84 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+132
  00162	50		 push	 eax
  00163	8b 4d ac	 mov	 ecx, DWORD PTR $T336171[ebp]
  00166	e8 00 00 00 00	 call	 ??0COverscanAspectFilter@@QAE@HHHH@Z ; COverscanAspectFilter::COverscanAspectFilter
  0016b	89 85 20 ff ff
	ff		 mov	 DWORD PTR tv165[ebp], eax
  00171	eb 0a		 jmp	 SHORT $LN29@CMasterFil
$LN28@CMasterFil:
  00173	c7 85 20 ff ff
	ff 00 00 00 00	 mov	 DWORD PTR tv165[ebp], 0
$LN29@CMasterFil:
  0017d	8b 8d 20 ff ff
	ff		 mov	 ecx, DWORD PTR tv165[ebp]
  00183	89 4d b0	 mov	 DWORD PTR $T336170[ebp], ecx
  00186	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0018a	6a 00		 push	 0
  0018c	8b 55 b0	 mov	 edx, DWORD PTR $T336170[ebp]
  0018f	52		 push	 edx
  00190	8d 4d b4	 lea	 ecx, DWORD PTR $T336169[ebp]
  00193	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  00198	89 85 1c ff ff
	ff		 mov	 DWORD PTR tv499[ebp], eax
  0019e	8b 85 1c ff ff
	ff		 mov	 eax, DWORD PTR tv499[ebp]
  001a4	89 85 18 ff ff
	ff		 mov	 DWORD PTR tv471[ebp], eax
  001aa	c6 45 fc 05	 mov	 BYTE PTR __$EHRec$[ebp+8], 5
  001ae	8b 8d 18 ff ff
	ff		 mov	 ecx, DWORD PTR tv471[ebp]
  001b4	51		 push	 ecx
  001b5	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  001bb	83 c1 0c	 add	 ecx, 12			; 0000000cH
  001be	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
  001c3	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  001c7	8d 4d b4	 lea	 ecx, DWORD PTR $T336169[ebp]
  001ca	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>

; 676  :         m_FilterChain.push_back(SmartPtr<CAspectFilter>(new COrbitAspectFilter(AspectSettings.OrbitPeriodX, AspectSettings.OrbitPeriodY, AspectSettings.OrbitSize)));

  001cf	6a 1c		 push	 28			; 0000001cH
  001d1	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  001d6	83 c4 04	 add	 esp, 4
  001d9	89 45 9c	 mov	 DWORD PTR $T336176[ebp], eax
  001dc	c6 45 fc 06	 mov	 BYTE PTR __$EHRec$[ebp+8], 6
  001e0	83 7d 9c 00	 cmp	 DWORD PTR $T336176[ebp], 0
  001e4	74 31		 je	 SHORT $LN30@CMasterFil
  001e6	8b 15 bc 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+188
  001ec	52		 push	 edx
  001ed	a1 cc 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+204
  001f2	50		 push	 eax
  001f3	8b 0d c8 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+200
  001f9	51		 push	 ecx
  001fa	8b 15 c4 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+196
  00200	52		 push	 edx
  00201	a1 c0 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+192
  00206	50		 push	 eax
  00207	8b 4d 9c	 mov	 ecx, DWORD PTR $T336176[ebp]
  0020a	e8 00 00 00 00	 call	 ??0COrbitAspectFilter@@QAE@_J0J@Z ; COrbitAspectFilter::COrbitAspectFilter
  0020f	89 85 14 ff ff
	ff		 mov	 DWORD PTR tv188[ebp], eax
  00215	eb 0a		 jmp	 SHORT $LN31@CMasterFil
$LN30@CMasterFil:
  00217	c7 85 14 ff ff
	ff 00 00 00 00	 mov	 DWORD PTR tv188[ebp], 0
$LN31@CMasterFil:
  00221	8b 8d 14 ff ff
	ff		 mov	 ecx, DWORD PTR tv188[ebp]
  00227	89 4d a0	 mov	 DWORD PTR $T336175[ebp], ecx
  0022a	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0022e	6a 00		 push	 0
  00230	8b 55 a0	 mov	 edx, DWORD PTR $T336175[ebp]
  00233	52		 push	 edx
  00234	8d 4d a4	 lea	 ecx, DWORD PTR $T336174[ebp]
  00237	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  0023c	89 85 10 ff ff
	ff		 mov	 DWORD PTR tv501[ebp], eax
  00242	8b 85 10 ff ff
	ff		 mov	 eax, DWORD PTR tv501[ebp]
  00248	89 85 0c ff ff
	ff		 mov	 DWORD PTR tv474[ebp], eax
  0024e	c6 45 fc 07	 mov	 BYTE PTR __$EHRec$[ebp+8], 7
  00252	8b 8d 0c ff ff
	ff		 mov	 ecx, DWORD PTR tv474[ebp]
  00258	51		 push	 ecx
  00259	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  0025f	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00262	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
  00267	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0026b	8d 4d a4	 lea	 ecx, DWORD PTR $T336174[ebp]
  0026e	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>

; 677  :     }
; 678  :     else

  00273	e9 9e 00 00 00	 jmp	 $LN20@CMasterFil
$LN22@CMasterFil:

; 679  :     {
; 680  :         m_FilterChain.push_back(SmartPtr<CAspectFilter>(new COverscanAspectFilter(AspectSettings.InitialTopOverscan, AspectSettings.InitialBottomOverscan, AspectSettings.InitialLeftOverscan, AspectSettings.InitialRightOverscan)));

  00278	6a 1c		 push	 28			; 0000001cH
  0027a	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0027f	83 c4 04	 add	 esp, 4
  00282	89 45 8c	 mov	 DWORD PTR $T336181[ebp], eax
  00285	c6 45 fc 08	 mov	 BYTE PTR __$EHRec$[ebp+8], 8
  00289	83 7d 8c 00	 cmp	 DWORD PTR $T336181[ebp], 0
  0028d	74 2b		 je	 SHORT $LN32@CMasterFil
  0028f	8b 15 90 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+144
  00295	52		 push	 edx
  00296	a1 8c 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+140
  0029b	50		 push	 eax
  0029c	8b 0d 88 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+136
  002a2	51		 push	 ecx
  002a3	8b 15 84 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+132
  002a9	52		 push	 edx
  002aa	8b 4d 8c	 mov	 ecx, DWORD PTR $T336181[ebp]
  002ad	e8 00 00 00 00	 call	 ??0COverscanAspectFilter@@QAE@HHHH@Z ; COverscanAspectFilter::COverscanAspectFilter
  002b2	89 85 08 ff ff
	ff		 mov	 DWORD PTR tv212[ebp], eax
  002b8	eb 0a		 jmp	 SHORT $LN33@CMasterFil
$LN32@CMasterFil:
  002ba	c7 85 08 ff ff
	ff 00 00 00 00	 mov	 DWORD PTR tv212[ebp], 0
$LN33@CMasterFil:
  002c4	8b 85 08 ff ff
	ff		 mov	 eax, DWORD PTR tv212[ebp]
  002ca	89 45 90	 mov	 DWORD PTR $T336180[ebp], eax
  002cd	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  002d1	6a 00		 push	 0
  002d3	8b 4d 90	 mov	 ecx, DWORD PTR $T336180[ebp]
  002d6	51		 push	 ecx
  002d7	8d 4d 94	 lea	 ecx, DWORD PTR $T336179[ebp]
  002da	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  002df	89 85 04 ff ff
	ff		 mov	 DWORD PTR tv503[ebp], eax
  002e5	8b 95 04 ff ff
	ff		 mov	 edx, DWORD PTR tv503[ebp]
  002eb	89 95 00 ff ff
	ff		 mov	 DWORD PTR tv477[ebp], edx
  002f1	c6 45 fc 09	 mov	 BYTE PTR __$EHRec$[ebp+8], 9
  002f5	8b 85 00 ff ff
	ff		 mov	 eax, DWORD PTR tv477[ebp]
  002fb	50		 push	 eax
  002fc	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00302	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00305	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
  0030a	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0030e	8d 4d 94	 lea	 ecx, DWORD PTR $T336179[ebp]
  00311	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
$LN20@CMasterFil:

; 681  :     }
; 682  :     if (AspectSettings.AspectMode)

  00316	83 3d 08 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+8, 0
  0031d	0f 84 c0 02 00
	00		 je	 $LN19@CMasterFil

; 683  :     {
; 684  :         SmartPtr<CAspectFilter> PosFilter;

  00323	8d 4d e8	 lea	 ecx, DWORD PTR _PosFilter$143093[ebp]
  00326	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  0032b	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH

; 685  :         if (AspectSettings.BounceEnabled)

  0032f	83 3d 98 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+152, 0
  00336	74 5d		 je	 SHORT $LN18@CMasterFil

; 686  :         {
; 687  :             PosFilter = new CBounceDestinationAspectFilter(AspectSettings.BouncePeriod);

  00338	6a 14		 push	 20			; 00000014H
  0033a	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0033f	83 c4 04	 add	 esp, 4
  00342	89 45 84	 mov	 DWORD PTR $T336185[ebp], eax
  00345	c6 45 fc 0b	 mov	 BYTE PTR __$EHRec$[ebp+8], 11 ; 0000000bH
  00349	83 7d 84 00	 cmp	 DWORD PTR $T336185[ebp], 0
  0034d	74 1e		 je	 SHORT $LN34@CMasterFil
  0034f	8b 0d ac 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+172
  00355	51		 push	 ecx
  00356	8b 15 a8 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+168
  0035c	52		 push	 edx
  0035d	8b 4d 84	 mov	 ecx, DWORD PTR $T336185[ebp]
  00360	e8 00 00 00 00	 call	 ??0CBounceDestinationAspectFilter@@QAE@_J@Z ; CBounceDestinationAspectFilter::CBounceDestinationAspectFilter
  00365	89 85 fc fe ff
	ff		 mov	 DWORD PTR tv235[ebp], eax
  0036b	eb 0a		 jmp	 SHORT $LN35@CMasterFil
$LN34@CMasterFil:
  0036d	c7 85 fc fe ff
	ff 00 00 00 00	 mov	 DWORD PTR tv235[ebp], 0
$LN35@CMasterFil:
  00377	8b 85 fc fe ff
	ff		 mov	 eax, DWORD PTR tv235[ebp]
  0037d	89 45 88	 mov	 DWORD PTR $T336184[ebp], eax
  00380	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH
  00384	8b 4d 88	 mov	 ecx, DWORD PTR $T336184[ebp]
  00387	51		 push	 ecx
  00388	8d 4d e8	 lea	 ecx, DWORD PTR _PosFilter$143093[ebp]
  0038b	e8 00 00 00 00	 call	 ??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z ; SmartPtr<CAspectFilter>::operator=

; 688  :         }
; 689  :         else

  00390	e9 d2 00 00 00	 jmp	 $LN17@CMasterFil
$LN18@CMasterFil:

; 690  :         {
; 691  :             double m_XPos, m_YPos;
; 692  :             switch (AspectSettings.HorizontalPos)

  00395	8b 15 48 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+72
  0039b	89 95 f8 fe ff
	ff		 mov	 DWORD PTR tv223[ebp], edx
  003a1	83 bd f8 fe ff
	ff 00		 cmp	 DWORD PTR tv223[ebp], 0
  003a8	74 16		 je	 SHORT $LN13@CMasterFil
  003aa	83 bd f8 fe ff
	ff 02		 cmp	 DWORD PTR tv223[ebp], 2
  003b1	74 02		 je	 SHORT $LN14@CMasterFil
  003b3	eb 12		 jmp	 SHORT $LN12@CMasterFil
$LN14@CMasterFil:

; 693  :             {
; 694  :             case HORZ_POS_LEFT:
; 695  :                 m_XPos = -1;

  003b5	dd 05 00 00 00
	00		 fld	 QWORD PTR __real@bff0000000000000
  003bb	dd 5d d4	 fstp	 QWORD PTR _m_XPos$143100[ebp]

; 696  :                 break;

  003be	eb 0c		 jmp	 SHORT $LN15@CMasterFil
$LN13@CMasterFil:

; 697  :             case HORZ_POS_RIGHT:
; 698  :                 m_XPos = 1;

  003c0	d9 e8		 fld1
  003c2	dd 5d d4	 fstp	 QWORD PTR _m_XPos$143100[ebp]

; 699  :                 break;

  003c5	eb 05		 jmp	 SHORT $LN15@CMasterFil
$LN12@CMasterFil:

; 700  :             default:
; 701  :                 m_XPos = 0;

  003c7	d9 ee		 fldz
  003c9	dd 5d d4	 fstp	 QWORD PTR _m_XPos$143100[ebp]
$LN15@CMasterFil:

; 702  :                 break;
; 703  :             }
; 704  :             switch (AspectSettings.VerticalPos)

  003cc	a1 44 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+68
  003d1	89 85 f4 fe ff
	ff		 mov	 DWORD PTR tv239[ebp], eax
  003d7	83 bd f4 fe ff
	ff 00		 cmp	 DWORD PTR tv239[ebp], 0
  003de	74 16		 je	 SHORT $LN8@CMasterFil
  003e0	83 bd f4 fe ff
	ff 02		 cmp	 DWORD PTR tv239[ebp], 2
  003e7	74 02		 je	 SHORT $LN9@CMasterFil
  003e9	eb 12		 jmp	 SHORT $LN7@CMasterFil
$LN9@CMasterFil:

; 705  :             {
; 706  :             case VERT_POS_TOP:
; 707  :                 m_YPos = -1;

  003eb	dd 05 00 00 00
	00		 fld	 QWORD PTR __real@bff0000000000000
  003f1	dd 5d dc	 fstp	 QWORD PTR _m_YPos$143101[ebp]

; 708  :                 break;

  003f4	eb 0c		 jmp	 SHORT $LN10@CMasterFil
$LN8@CMasterFil:

; 709  :             case VERT_POS_BOTTOM:
; 710  :                 m_YPos = 1;

  003f6	d9 e8		 fld1
  003f8	dd 5d dc	 fstp	 QWORD PTR _m_YPos$143101[ebp]

; 711  :                 break;

  003fb	eb 05		 jmp	 SHORT $LN10@CMasterFil
$LN7@CMasterFil:

; 712  :             default:
; 713  :                 m_YPos = 0;

  003fd	d9 ee		 fldz
  003ff	dd 5d dc	 fstp	 QWORD PTR _m_YPos$143101[ebp]
$LN10@CMasterFil:

; 714  :                 break;
; 715  :             }
; 716  :             PosFilter = new CPositionDestinationAspectFilter(m_XPos,m_YPos);

  00402	6a 20		 push	 32			; 00000020H
  00404	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00409	83 c4 04	 add	 esp, 4
  0040c	89 85 7c ff ff
	ff		 mov	 DWORD PTR $T336189[ebp], eax
  00412	c6 45 fc 0c	 mov	 BYTE PTR __$EHRec$[ebp+8], 12 ; 0000000cH
  00416	83 bd 7c ff ff
	ff 00		 cmp	 DWORD PTR $T336189[ebp], 0
  0041d	74 25		 je	 SHORT $LN36@CMasterFil
  0041f	83 ec 08	 sub	 esp, 8
  00422	dd 45 dc	 fld	 QWORD PTR _m_YPos$143101[ebp]
  00425	dd 1c 24	 fstp	 QWORD PTR [esp]
  00428	83 ec 08	 sub	 esp, 8
  0042b	dd 45 d4	 fld	 QWORD PTR _m_XPos$143100[ebp]
  0042e	dd 1c 24	 fstp	 QWORD PTR [esp]
  00431	8b 8d 7c ff ff
	ff		 mov	 ecx, DWORD PTR $T336189[ebp]
  00437	e8 00 00 00 00	 call	 ??0CPositionDestinationAspectFilter@@QAE@NN@Z ; CPositionDestinationAspectFilter::CPositionDestinationAspectFilter
  0043c	89 85 f0 fe ff
	ff		 mov	 DWORD PTR tv256[ebp], eax
  00442	eb 0a		 jmp	 SHORT $LN37@CMasterFil
$LN36@CMasterFil:
  00444	c7 85 f0 fe ff
	ff 00 00 00 00	 mov	 DWORD PTR tv256[ebp], 0
$LN37@CMasterFil:
  0044e	8b 8d f0 fe ff
	ff		 mov	 ecx, DWORD PTR tv256[ebp]
  00454	89 4d 80	 mov	 DWORD PTR $T336188[ebp], ecx
  00457	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH
  0045b	8b 55 80	 mov	 edx, DWORD PTR $T336188[ebp]
  0045e	52		 push	 edx
  0045f	8d 4d e8	 lea	 ecx, DWORD PTR _PosFilter$143093[ebp]
  00462	e8 00 00 00 00	 call	 ??4?$SmartPtr@VCAspectFilter@@@@QAEAAV0@PAVCAspectFilter@@@Z ; SmartPtr<CAspectFilter>::operator=
$LN17@CMasterFil:

; 717  :         }
; 718  : 
; 719  :         PosFilter->SetChild(SmartPtr<CAspectFilter>(new CCropAspectFilter()));

  00467	6a 0c		 push	 12			; 0000000cH
  00469	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0046e	83 c4 04	 add	 esp, 4
  00471	89 85 70 ff ff
	ff		 mov	 DWORD PTR $T336194[ebp], eax
  00477	c6 45 fc 0d	 mov	 BYTE PTR __$EHRec$[ebp+8], 13 ; 0000000dH
  0047b	83 bd 70 ff ff
	ff 00		 cmp	 DWORD PTR $T336194[ebp], 0
  00482	74 13		 je	 SHORT $LN38@CMasterFil
  00484	8b 8d 70 ff ff
	ff		 mov	 ecx, DWORD PTR $T336194[ebp]
  0048a	e8 00 00 00 00	 call	 ??0CCropAspectFilter@@QAE@XZ
  0048f	89 85 ec fe ff
	ff		 mov	 DWORD PTR tv279[ebp], eax
  00495	eb 0a		 jmp	 SHORT $LN39@CMasterFil
$LN38@CMasterFil:
  00497	c7 85 ec fe ff
	ff 00 00 00 00	 mov	 DWORD PTR tv279[ebp], 0
$LN39@CMasterFil:
  004a1	8b 85 ec fe ff
	ff		 mov	 eax, DWORD PTR tv279[ebp]
  004a7	89 85 74 ff ff
	ff		 mov	 DWORD PTR $T336193[ebp], eax
  004ad	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH
  004b1	83 ec 08	 sub	 esp, 8
  004b4	8b cc		 mov	 ecx, esp
  004b6	89 a5 78 ff ff
	ff		 mov	 DWORD PTR $T336192[ebp], esp
  004bc	6a 00		 push	 0
  004be	8b 95 74 ff ff
	ff		 mov	 edx, DWORD PTR $T336193[ebp]
  004c4	52		 push	 edx
  004c5	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  004ca	89 85 e8 fe ff
	ff		 mov	 DWORD PTR tv506[ebp], eax
  004d0	8b 85 e8 fe ff
	ff		 mov	 eax, DWORD PTR tv506[ebp]
  004d6	89 85 e4 fe ff
	ff		 mov	 DWORD PTR tv483[ebp], eax
  004dc	c6 45 fc 0e	 mov	 BYTE PTR __$EHRec$[ebp+8], 14 ; 0000000eH
  004e0	8d 4d e8	 lea	 ecx, DWORD PTR _PosFilter$143093[ebp]
  004e3	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::operator->
  004e8	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH
  004ec	8b c8		 mov	 ecx, eax
  004ee	e8 00 00 00 00	 call	 ?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z ; CAspectFilter::SetChild

; 720  : 
; 721  :         if (!AspectSettings.AspectImageClipped || AspectSettings.SquarePixels)

  004f3	83 3d 94 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+148, 0
  004fa	74 0d		 je	 SHORT $LN5@CMasterFil
  004fc	83 3d f8 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+248, 0
  00503	0f 84 bc 00 00
	00		 je	 $LN6@CMasterFil
$LN5@CMasterFil:

; 722  :         {
; 723  :             SmartPtr<CAspectFilter> UnCropFilter(new CUnCropAspectFilter());

  00509	6a 0c		 push	 12			; 0000000cH
  0050b	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00510	83 c4 04	 add	 esp, 4
  00513	89 85 68 ff ff
	ff		 mov	 DWORD PTR $T336198[ebp], eax
  00519	c6 45 fc 0f	 mov	 BYTE PTR __$EHRec$[ebp+8], 15 ; 0000000fH
  0051d	83 bd 68 ff ff
	ff 00		 cmp	 DWORD PTR $T336198[ebp], 0
  00524	74 13		 je	 SHORT $LN40@CMasterFil
  00526	8b 8d 68 ff ff
	ff		 mov	 ecx, DWORD PTR $T336198[ebp]
  0052c	e8 00 00 00 00	 call	 ??0CUnCropAspectFilter@@QAE@XZ
  00531	89 85 e0 fe ff
	ff		 mov	 DWORD PTR tv333[ebp], eax
  00537	eb 0a		 jmp	 SHORT $LN41@CMasterFil
$LN40@CMasterFil:
  00539	c7 85 e0 fe ff
	ff 00 00 00 00	 mov	 DWORD PTR tv333[ebp], 0
$LN41@CMasterFil:
  00543	8b 8d e0 fe ff
	ff		 mov	 ecx, DWORD PTR tv333[ebp]
  00549	89 8d 6c ff ff
	ff		 mov	 DWORD PTR $T336197[ebp], ecx
  0054f	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH
  00553	6a 00		 push	 0
  00555	8b 95 6c ff ff
	ff		 mov	 edx, DWORD PTR $T336197[ebp]
  0055b	52		 push	 edx
  0055c	8d 4d cc	 lea	 ecx, DWORD PTR _UnCropFilter$143134[ebp]
  0055f	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  00564	c6 45 fc 10	 mov	 BYTE PTR __$EHRec$[ebp+8], 16 ; 00000010H

; 724  :             UnCropFilter->SetChild(PosFilter);

  00568	83 ec 08	 sub	 esp, 8
  0056b	8b cc		 mov	 ecx, esp
  0056d	89 a5 64 ff ff
	ff		 mov	 DWORD PTR $T336201[ebp], esp
  00573	8d 45 e8	 lea	 eax, DWORD PTR _PosFilter$143093[ebp]
  00576	50		 push	 eax
  00577	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@ABV0@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  0057c	89 85 dc fe ff
	ff		 mov	 DWORD PTR tv321[ebp], eax
  00582	8b 8d dc fe ff
	ff		 mov	 ecx, DWORD PTR tv321[ebp]
  00588	89 8d d8 fe ff
	ff		 mov	 DWORD PTR tv487[ebp], ecx
  0058e	c6 45 fc 11	 mov	 BYTE PTR __$EHRec$[ebp+8], 17 ; 00000011H
  00592	8d 4d cc	 lea	 ecx, DWORD PTR _UnCropFilter$143134[ebp]
  00595	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCAspectFilter@@@@QBEPAVCAspectFilter@@XZ ; SmartPtr<CAspectFilter>::operator->
  0059a	c6 45 fc 10	 mov	 BYTE PTR __$EHRec$[ebp+8], 16 ; 00000010H
  0059e	8b c8		 mov	 ecx, eax
  005a0	e8 00 00 00 00	 call	 ?SetChild@CAspectFilter@@QAEXV?$SmartPtr@VCAspectFilter@@@@@Z ; CAspectFilter::SetChild

; 725  :             m_FilterChain.push_back(UnCropFilter);

  005a5	8d 55 cc	 lea	 edx, DWORD PTR _UnCropFilter$143134[ebp]
  005a8	52		 push	 edx
  005a9	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  005af	83 c1 0c	 add	 ecx, 12			; 0000000cH
  005b2	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back

; 726  :         }

  005b7	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH
  005bb	8d 4d cc	 lea	 ecx, DWORD PTR _UnCropFilter$143134[ebp]
  005be	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>

; 727  :         else

  005c3	eb 12		 jmp	 SHORT $LN4@CMasterFil
$LN6@CMasterFil:

; 728  :         {
; 729  :             m_FilterChain.push_back(PosFilter);

  005c5	8d 45 e8	 lea	 eax, DWORD PTR _PosFilter$143093[ebp]
  005c8	50		 push	 eax
  005c9	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  005cf	83 c1 0c	 add	 ecx, 12			; 0000000cH
  005d2	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
$LN4@CMasterFil:

; 730  :         }
; 731  :     }

  005d7	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  005db	8d 4d e8	 lea	 ecx, DWORD PTR _PosFilter$143093[ebp]
  005de	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
$LN19@CMasterFil:

; 732  : 
; 733  :     // This like is where image zooming would be implemented...
; 734  :     // Sample code zooms in 2x on the center of the image
; 735  :     // See comments in AspectFilters.hpp for PanAndZoomAspectFilter details.
; 736  :     if (AspectSettings.ZoomFactorX != 100 || AspectSettings.ZoomFactorY != 100 ||
; 737  :         AspectSettings.ZoomCenterX != 50 || AspectSettings.ZoomCenterY != 50)

  005e3	83 3d dc 00 00
	00 64		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+220, 100 ; 00000064H
  005ea	75 1f		 jne	 SHORT $LN2@CMasterFil
  005ec	83 3d e0 00 00
	00 64		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+224, 100 ; 00000064H
  005f3	75 16		 jne	 SHORT $LN2@CMasterFil
  005f5	83 3d e4 00 00
	00 32		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+228, 50 ; 00000032H
  005fc	75 0d		 jne	 SHORT $LN2@CMasterFil
  005fe	83 3d e8 00 00
	00 32		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+232, 50 ; 00000032H
  00605	0f 84 b3 00 00
	00		 je	 $LN3@CMasterFil
$LN2@CMasterFil:

; 738  :     {
; 739  :         m_FilterChain.push_back(SmartPtr<CAspectFilter>(new CPanAndZoomAspectFilter(AspectSettings.ZoomCenterX,
; 740  :                                                                                    AspectSettings.ZoomCenterY,
; 741  :                                                                                    AspectSettings.ZoomFactorX,
; 742  :                                                                                    AspectSettings.ZoomFactorY)));

  0060b	6a 30		 push	 48			; 00000030H
  0060d	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00612	83 c4 04	 add	 esp, 4
  00615	89 85 54 ff ff
	ff		 mov	 DWORD PTR $T336204[ebp], eax
  0061b	c6 45 fc 12	 mov	 BYTE PTR __$EHRec$[ebp+8], 18 ; 00000012H
  0061f	83 bd 54 ff ff
	ff 00		 cmp	 DWORD PTR $T336204[ebp], 0
  00626	74 2e		 je	 SHORT $LN42@CMasterFil
  00628	8b 0d e0 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+224
  0062e	51		 push	 ecx
  0062f	8b 15 dc 00 00
	00		 mov	 edx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+220
  00635	52		 push	 edx
  00636	a1 e8 00 00 00	 mov	 eax, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+232
  0063b	50		 push	 eax
  0063c	8b 0d e4 00 00
	00		 mov	 ecx, DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+228
  00642	51		 push	 ecx
  00643	8b 8d 54 ff ff
	ff		 mov	 ecx, DWORD PTR $T336204[ebp]
  00649	e8 00 00 00 00	 call	 ??0CPanAndZoomAspectFilter@@QAE@JJJJ@Z ; CPanAndZoomAspectFilter::CPanAndZoomAspectFilter
  0064e	89 85 d4 fe ff
	ff		 mov	 DWORD PTR tv382[ebp], eax
  00654	eb 0a		 jmp	 SHORT $LN43@CMasterFil
$LN42@CMasterFil:
  00656	c7 85 d4 fe ff
	ff 00 00 00 00	 mov	 DWORD PTR tv382[ebp], 0
$LN43@CMasterFil:
  00660	8b 95 d4 fe ff
	ff		 mov	 edx, DWORD PTR tv382[ebp]
  00666	89 95 58 ff ff
	ff		 mov	 DWORD PTR $T336203[ebp], edx
  0066c	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00670	6a 00		 push	 0
  00672	8b 85 58 ff ff
	ff		 mov	 eax, DWORD PTR $T336203[ebp]
  00678	50		 push	 eax
  00679	8d 8d 5c ff ff
	ff		 lea	 ecx, DWORD PTR $T336202[ebp]
  0067f	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  00684	89 85 d0 fe ff
	ff		 mov	 DWORD PTR tv511[ebp], eax
  0068a	8b 8d d0 fe ff
	ff		 mov	 ecx, DWORD PTR tv511[ebp]
  00690	89 8d cc fe ff
	ff		 mov	 DWORD PTR tv490[ebp], ecx
  00696	c6 45 fc 13	 mov	 BYTE PTR __$EHRec$[ebp+8], 19 ; 00000013H
  0069a	8b 95 cc fe ff
	ff		 mov	 edx, DWORD PTR tv490[ebp]
  006a0	52		 push	 edx
  006a1	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  006a7	83 c1 0c	 add	 ecx, 12			; 0000000cH
  006aa	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
  006af	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  006b3	8d 8d 5c ff ff
	ff		 lea	 ecx, DWORD PTR $T336202[ebp]
  006b9	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
$LN3@CMasterFil:

; 743  :     }
; 744  : 
; 745  :     // only put resize filter in if main window is not full screen
; 746  :     if (AspectSettings.AutoResizeWindow && !bIsFullScreen)

  006be	83 3d d4 00 00
	00 00		 cmp	 DWORD PTR ?AspectSettings@@3UTAspectSettings@@A+212, 0
  006c5	0f 84 a5 00 00
	00		 je	 $LN1@CMasterFil
  006cb	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?bIsFullScreen@@3HA, 0 ; bIsFullScreen
  006d2	0f 85 98 00 00
	00		 jne	 $LN1@CMasterFil

; 747  :     {
; 748  :         m_FilterChain.push_back(SmartPtr<CAspectFilter>(new CResizeWindowAspectFilter()));

  006d8	6a 0c		 push	 12			; 0000000cH
  006da	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  006df	83 c4 04	 add	 esp, 4
  006e2	89 85 44 ff ff
	ff		 mov	 DWORD PTR $T336209[ebp], eax
  006e8	c6 45 fc 14	 mov	 BYTE PTR __$EHRec$[ebp+8], 20 ; 00000014H
  006ec	83 bd 44 ff ff
	ff 00		 cmp	 DWORD PTR $T336209[ebp], 0
  006f3	74 13		 je	 SHORT $LN44@CMasterFil
  006f5	8b 8d 44 ff ff
	ff		 mov	 ecx, DWORD PTR $T336209[ebp]
  006fb	e8 00 00 00 00	 call	 ??0CResizeWindowAspectFilter@@QAE@XZ
  00700	89 85 c8 fe ff
	ff		 mov	 DWORD PTR tv436[ebp], eax
  00706	eb 0a		 jmp	 SHORT $LN45@CMasterFil
$LN44@CMasterFil:
  00708	c7 85 c8 fe ff
	ff 00 00 00 00	 mov	 DWORD PTR tv436[ebp], 0
$LN45@CMasterFil:
  00712	8b 85 c8 fe ff
	ff		 mov	 eax, DWORD PTR tv436[ebp]
  00718	89 85 48 ff ff
	ff		 mov	 DWORD PTR $T336208[ebp], eax
  0071e	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00722	6a 00		 push	 0
  00724	8b 8d 48 ff ff
	ff		 mov	 ecx, DWORD PTR $T336208[ebp]
  0072a	51		 push	 ecx
  0072b	8d 8d 4c ff ff
	ff		 lea	 ecx, DWORD PTR $T336207[ebp]
  00731	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  00736	89 85 c4 fe ff
	ff		 mov	 DWORD PTR tv513[ebp], eax
  0073c	8b 95 c4 fe ff
	ff		 mov	 edx, DWORD PTR tv513[ebp]
  00742	89 95 c0 fe ff
	ff		 mov	 DWORD PTR tv493[ebp], edx
  00748	c6 45 fc 15	 mov	 BYTE PTR __$EHRec$[ebp+8], 21 ; 00000015H
  0074c	8b 85 c0 fe ff
	ff		 mov	 eax, DWORD PTR tv493[ebp]
  00752	50		 push	 eax
  00753	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00759	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0075c	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
  00761	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00765	8d 8d 4c ff ff
	ff		 lea	 ecx, DWORD PTR $T336207[ebp]
  0076b	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
$LN1@CMasterFil:

; 749  :     }
; 750  : 
; 751  :     m_FilterChain.push_back(SmartPtr<CAspectFilter>(new CScreenSanityAspectFilter(SrcWidth, SrcHeight)));

  00770	6a 14		 push	 20			; 00000014H
  00772	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00777	83 c4 04	 add	 esp, 4
  0077a	89 85 34 ff ff
	ff		 mov	 DWORD PTR $T336214[ebp], eax
  00780	c6 45 fc 16	 mov	 BYTE PTR __$EHRec$[ebp+8], 22 ; 00000016H
  00784	83 bd 34 ff ff
	ff 00		 cmp	 DWORD PTR $T336214[ebp], 0
  0078b	74 1b		 je	 SHORT $LN46@CMasterFil
  0078d	8b 4d 0c	 mov	 ecx, DWORD PTR _SrcHeight$[ebp]
  00790	51		 push	 ecx
  00791	8b 55 08	 mov	 edx, DWORD PTR _SrcWidth$[ebp]
  00794	52		 push	 edx
  00795	8b 8d 34 ff ff
	ff		 mov	 ecx, DWORD PTR $T336214[ebp]
  0079b	e8 00 00 00 00	 call	 ??0CScreenSanityAspectFilter@@QAE@HH@Z ; CScreenSanityAspectFilter::CScreenSanityAspectFilter
  007a0	89 85 bc fe ff
	ff		 mov	 DWORD PTR tv458[ebp], eax
  007a6	eb 0a		 jmp	 SHORT $LN47@CMasterFil
$LN46@CMasterFil:
  007a8	c7 85 bc fe ff
	ff 00 00 00 00	 mov	 DWORD PTR tv458[ebp], 0
$LN47@CMasterFil:
  007b2	8b 85 bc fe ff
	ff		 mov	 eax, DWORD PTR tv458[ebp]
  007b8	89 85 38 ff ff
	ff		 mov	 DWORD PTR $T336213[ebp], eax
  007be	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  007c2	6a 00		 push	 0
  007c4	8b 8d 38 ff ff
	ff		 mov	 ecx, DWORD PTR $T336213[ebp]
  007ca	51		 push	 ecx
  007cb	8d 8d 3c ff ff
	ff		 lea	 ecx, DWORD PTR $T336212[ebp]
  007d1	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCAspectFilter@@@@QAE@PAVCAspectFilter@@PAUCounter@@@Z ; SmartPtr<CAspectFilter>::SmartPtr<CAspectFilter>
  007d6	89 85 b8 fe ff
	ff		 mov	 DWORD PTR tv515[ebp], eax
  007dc	8b 95 b8 fe ff
	ff		 mov	 edx, DWORD PTR tv515[ebp]
  007e2	89 95 b4 fe ff
	ff		 mov	 DWORD PTR tv496[ebp], edx
  007e8	c6 45 fc 17	 mov	 BYTE PTR __$EHRec$[ebp+8], 23 ; 00000017H
  007ec	8b 85 b4 fe ff
	ff		 mov	 eax, DWORD PTR tv496[ebp]
  007f2	50		 push	 eax
  007f3	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  007f9	83 c1 0c	 add	 ecx, 12			; 0000000cH
  007fc	e8 00 00 00 00	 call	 ?push_back@?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAEXABV?$SmartPtr@VCAspectFilter@@@@@Z ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::push_back
  00801	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00805	8d 8d 3c ff ff
	ff		 lea	 ecx, DWORD PTR $T336212[ebp]
  0080b	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>

; 752  : }

  00810	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00817	8b 85 30 ff ff
	ff		 mov	 eax, DWORD PTR _this$[ebp]
  0081d	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00820	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00827	59		 pop	 ecx
  00828	8b e5		 mov	 esp, ebp
  0082a	5d		 pop	 ebp
  0082b	c2 08 00	 ret	 8
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$0:
  00000	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00006	e9 00 00 00 00	 jmp	 ??1CAspectFilter@@UAE@XZ ; CAspectFilter::~CAspectFilter
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$1:
  0000b	8b 8d 30 ff ff
	ff		 mov	 ecx, DWORD PTR _this$[ebp]
  00011	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00014	e9 00 00 00 00	 jmp	 ??1?$vector@V?$SmartPtr@VCAspectFilter@@@@V?$allocator@V?$SmartPtr@VCAspectFilter@@@@@std@@@std@@QAE@XZ ; std::vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >::~vector<SmartPtr<CAspectFilter>,std::allocator<SmartPtr<CAspectFilter> > >
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$2:
  00019	8b 45 bc	 mov	 eax, DWORD PTR $T336166[ebp]
  0001c	50		 push	 eax
  0001d	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00022	59		 pop	 ecx
  00023	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$3:
  00024	8d 4d c4	 lea	 ecx, DWORD PTR $T336164[ebp]
  00027	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$4:
  0002c	8b 45 ac	 mov	 eax, DWORD PTR $T336171[ebp]
  0002f	50		 push	 eax
  00030	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00035	59		 pop	 ecx
  00036	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$5:
  00037	8d 4d b4	 lea	 ecx, DWORD PTR $T336169[ebp]
  0003a	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$6:
  0003f	8b 45 9c	 mov	 eax, DWORD PTR $T336176[ebp]
  00042	50		 push	 eax
  00043	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00048	59		 pop	 ecx
  00049	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$7:
  0004a	8d 4d a4	 lea	 ecx, DWORD PTR $T336174[ebp]
  0004d	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$8:
  00052	8b 45 8c	 mov	 eax, DWORD PTR $T336181[ebp]
  00055	50		 push	 eax
  00056	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0005b	59		 pop	 ecx
  0005c	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$9:
  0005d	8d 4d 94	 lea	 ecx, DWORD PTR $T336179[ebp]
  00060	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$10:
  00065	8d 4d e8	 lea	 ecx, DWORD PTR _PosFilter$143093[ebp]
  00068	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$11:
  0006d	8b 45 84	 mov	 eax, DWORD PTR $T336185[ebp]
  00070	50		 push	 eax
  00071	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00076	59		 pop	 ecx
  00077	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$12:
  00078	8b 85 7c ff ff
	ff		 mov	 eax, DWORD PTR $T336189[ebp]
  0007e	50		 push	 eax
  0007f	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00084	59		 pop	 ecx
  00085	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$13:
  00086	8b 85 70 ff ff
	ff		 mov	 eax, DWORD PTR $T336194[ebp]
  0008c	50		 push	 eax
  0008d	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00092	59		 pop	 ecx
  00093	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$14:
  00094	8b 8d 78 ff ff
	ff		 mov	 ecx, DWORD PTR $T336192[ebp]
  0009a	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$15:
  0009f	8b 85 68 ff ff
	ff		 mov	 eax, DWORD PTR $T336198[ebp]
  000a5	50		 push	 eax
  000a6	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  000ab	59		 pop	 ecx
  000ac	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$16:
  000ad	8d 4d cc	 lea	 ecx, DWORD PTR _UnCropFilter$143134[ebp]
  000b0	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$17:
  000b5	8b 8d 64 ff ff
	ff		 mov	 ecx, DWORD PTR $T336201[ebp]
  000bb	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$18:
  000c0	8b 85 54 ff ff
	ff		 mov	 eax, DWORD PTR $T336204[ebp]
  000c6	50		 push	 eax
  000c7	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  000cc	59		 pop	 ecx
  000cd	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$19:
  000ce	8d 8d 5c ff ff
	ff		 lea	 ecx, DWORD PTR $T336202[ebp]
  000d4	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$20:
  000d9	8b 85 44 ff ff
	ff		 mov	 eax, DWORD PTR $T336209[ebp]
  000df	50		 push	 eax
  000e0	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  000e5	59		 pop	 ecx
  000e6	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$21:
  000e7	8d 8d 4c ff ff
	ff		 lea	 ecx, DWORD PTR $T336207[ebp]
  000ed	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$22:
  000f2	8b 85 34 ff ff
	ff		 mov	 eax, DWORD PTR $T336214[ebp]
  000f8	50		 push	 eax
  000f9	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  000fe	59		 pop	 ecx
  000ff	c3		 ret	 0
__unwindfunclet$??0CMasterFilterChain@@QAE@HH@Z$23:
  00100	8d 8d 3c ff ff
	ff		 lea	 ecx, DWORD PTR $T336212[ebp]
  00106	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCAspectFilter@@@@QAE@XZ ; SmartPtr<CAspectFilter>::~SmartPtr<CAspectFilter>
__ehhandler$??0CMasterFilterChain@@QAE@HH@Z:
  0010b	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0010f	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00112	8b 8a bc fe ff
	ff		 mov	 ecx, DWORD PTR [edx-324]
  00118	33 c8		 xor	 ecx, eax
  0011a	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0011f	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0CMasterFilterChain@@QAE@HH@Z
  00124	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CMasterFilterChain@@QAE@HH@Z ENDP			; CMasterFilterChain::CMasterFilterChain
; Function compile flags: /Odtp
;	COMDAT ?DebugDump@CPanAndZoomAspectFilter@@UAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@CPanAndZoomAspectFilter@@UAEXXZ PROC		; CPanAndZoomAspectFilter::DebugDump, COMDAT
; _this$ = ecx

; 503  : {

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

; 504  :     LOG(2,_T("m_XPos = %lf, m_YPos = %lf, m_XZoom = %lf, m_YZoom = %lf"),m_XPos,m_YPos,m_XZoom,m_YZoom);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	83 ec 08	 sub	 esp, 8
  0000d	dd 40 28	 fld	 QWORD PTR [eax+40]
  00010	dd 1c 24	 fstp	 QWORD PTR [esp]
  00013	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 ec 08	 sub	 esp, 8
  00019	dd 41 20	 fld	 QWORD PTR [ecx+32]
  0001c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0001f	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00022	83 ec 08	 sub	 esp, 8
  00025	dd 42 18	 fld	 QWORD PTR [edx+24]
  00028	dd 1c 24	 fstp	 QWORD PTR [esp]
  0002b	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0002e	83 ec 08	 sub	 esp, 8
  00031	dd 40 10	 fld	 QWORD PTR [eax+16]
  00034	dd 1c 24	 fstp	 QWORD PTR [esp]
  00037	68 00 00 00 00	 push	 OFFSET ??_C@_1HC@NLAOHMCK@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAX?$AAZ@
  0003c	6a 02		 push	 2
  0003e	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00043	83 c4 28	 add	 esp, 40			; 00000028H

; 505  : }

  00046	8b e5		 mov	 esp, ebp
  00048	5d		 pop	 ebp
  00049	c3		 ret	 0
?DebugDump@CPanAndZoomAspectFilter@@UAEXXZ ENDP		; CPanAndZoomAspectFilter::DebugDump
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?DebugDump@CPositionDestinationAspectFilter@@UAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@CPositionDestinationAspectFilter@@UAEXXZ PROC ; CPositionDestinationAspectFilter::DebugDump, COMDAT
; _this$ = ecx

; 273  : {

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

; 274  :     LOG(2,_T("m_XPos = %lf, m_YPos = %lf"),m_XPos,m_YPos);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	83 ec 08	 sub	 esp, 8
  0000d	dd 40 18	 fld	 QWORD PTR [eax+24]
  00010	dd 1c 24	 fstp	 QWORD PTR [esp]
  00013	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	83 ec 08	 sub	 esp, 8
  00019	dd 41 10	 fld	 QWORD PTR [ecx+16]
  0001c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0001f	68 00 00 00 00	 push	 OFFSET ??_C@_1DG@JPMKLLE@?$AAm?$AA_?$AAX?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAY?$AAP?$AAo?$AAs?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@
  00024	6a 02		 push	 2
  00026	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0002b	83 c4 18	 add	 esp, 24			; 00000018H

; 275  : }

  0002e	8b e5		 mov	 esp, ebp
  00030	5d		 pop	 ebp
  00031	c3		 ret	 0
?DebugDump@CPositionDestinationAspectFilter@@UAEXXZ ENDP ; CPositionDestinationAspectFilter::DebugDump
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?DebugDump@CBounceDestinationAspectFilter@@UAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@CBounceDestinationAspectFilter@@UAEXXZ PROC	; CBounceDestinationAspectFilter::DebugDump, COMDAT
; _this$ = ecx

; 235  : {

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

; 236  :     LOG(2,_T("position = %lf"),m_pBouncer->position());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0000d	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::operator->
  00012	8b c8		 mov	 ecx, eax
  00014	e8 00 00 00 00	 call	 ?position@CPeriodBouncer@@QAENXZ ; CPeriodBouncer::position
  00019	83 ec 08	 sub	 esp, 8
  0001c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0001f	68 00 00 00 00	 push	 OFFSET ??_C@_1BO@MFKJFIM@?$AAp?$AAo?$AAs?$AAi?$AAt?$AAi?$AAo?$AAn?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?$AA@
  00024	6a 02		 push	 2
  00026	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0002b	83 c4 10	 add	 esp, 16			; 00000010H

; 237  : }

  0002e	8b e5		 mov	 esp, ebp
  00030	5d		 pop	 ebp
  00031	c3		 ret	 0
?DebugDump@CBounceDestinationAspectFilter@@UAEXXZ ENDP	; CBounceDestinationAspectFilter::DebugDump
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?DebugDump@COrbitAspectFilter@@UAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@COrbitAspectFilter@@UAEXXZ PROC		; COrbitAspectFilter::DebugDump, COMDAT
; _this$ = ecx

; 200  : {

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

; 201  :     LOG(2,_T("m_pXOrbitBouncer = %lf, m_pYOrbitBouncer = %lf"),m_pXOrbitBouncer->position(), m_pYOrbitBouncer->position());

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	83 c1 14	 add	 ecx, 20			; 00000014H
  0000d	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::operator->
  00012	8b c8		 mov	 ecx, eax
  00014	e8 00 00 00 00	 call	 ?position@CPeriodBouncer@@QAENXZ ; CPeriodBouncer::position
  00019	83 ec 08	 sub	 esp, 8
  0001c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0001f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00022	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00025	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCPeriodBouncer@@@@QBEPAVCPeriodBouncer@@XZ ; SmartPtr<CPeriodBouncer>::operator->
  0002a	8b c8		 mov	 ecx, eax
  0002c	e8 00 00 00 00	 call	 ?position@CPeriodBouncer@@QAENXZ ; CPeriodBouncer::position
  00031	83 ec 08	 sub	 esp, 8
  00034	dd 1c 24	 fstp	 QWORD PTR [esp]
  00037	68 00 00 00 00	 push	 OFFSET ??_C@_1FO@JNBGNOJP@?$AAm?$AA_?$AAp?$AAX?$AAO?$AAr?$AAb?$AAi?$AAt?$AAB?$AAo?$AAu?$AAn?$AAc?$AAe?$AAr?$AA?5?$AA?$DN?$AA?5?$AA?$CF?$AAl?$AAf?$AA?0?$AA?5?$AAm?$AA_?$AAp?$AAY?$AAO?$AAr?$AAb?$AAi@
  0003c	6a 02		 push	 2
  0003e	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00043	83 c4 18	 add	 esp, 24			; 00000018H

; 202  : }

  00046	8b e5		 mov	 esp, ebp
  00048	5d		 pop	 ebp
  00049	c3		 ret	 0
?DebugDump@COrbitAspectFilter@@UAEXXZ ENDP		; COrbitAspectFilter::DebugDump
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?DebugDump@CAnalogueBlankingFilter@@UAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@CAnalogueBlankingFilter@@UAEXXZ PROC		; CAnalogueBlankingFilter::DebugDump, COMDAT
; _this$ = ecx

; 170  : {

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

; 171  :     LOG(2,_T("AnalogueBlanking %d %d %d %d"), m_TopShift, m_BottomShift, m_LeftShift, m_RightShift);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 48 18	 mov	 ecx, DWORD PTR [eax+24]
  0000d	51		 push	 ecx
  0000e	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00011	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  00014	50		 push	 eax
  00015	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00018	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  0001b	52		 push	 edx
  0001c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001f	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00022	51		 push	 ecx
  00023	68 00 00 00 00	 push	 OFFSET ??_C@_1DK@OGIOAPEI@?$AAA?$AAn?$AAa?$AAl?$AAo?$AAg?$AAu?$AAe?$AAB?$AAl?$AAa?$AAn?$AAk?$AAi?$AAn?$AAg?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?5?$AA?$CF?$AAd?$AA?$AA@
  00028	6a 02		 push	 2
  0002a	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0002f	83 c4 18	 add	 esp, 24			; 00000018H

; 172  : }

  00032	8b e5		 mov	 esp, ebp
  00034	5d		 pop	 ebp
  00035	c3		 ret	 0
?DebugDump@CAnalogueBlankingFilter@@UAEXXZ ENDP		; CAnalogueBlankingFilter::DebugDump
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?DebugDump@COverscanAspectFilter@@UAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@COverscanAspectFilter@@UAEXXZ PROC		; COverscanAspectFilter::DebugDump, 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  :     LOG(2,_T("Overscans (Top,Bottom,Left,Right) = (%d,%d,%d,%d)"),m_TopOverscan, m_BottomOverscan, m_LeftOverscan, m_RightOverscan);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 48 18	 mov	 ecx, DWORD PTR [eax+24]
  0000d	51		 push	 ecx
  0000e	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00011	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  00014	50		 push	 eax
  00015	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00018	8b 51 10	 mov	 edx, DWORD PTR [ecx+16]
  0001b	52		 push	 edx
  0001c	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0001f	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  00022	51		 push	 ecx
  00023	68 00 00 00 00	 push	 OFFSET ??_C@_1GE@MPIAGFPN@?$AAO?$AAv?$AAe?$AAr?$AAs?$AAc?$AAa?$AAn?$AAs?$AA?5?$AA?$CI?$AAT?$AAo?$AAp?$AA?0?$AAB?$AAo?$AAt?$AAt?$AAo?$AAm?$AA?0?$AAL?$AAe?$AAf?$AAt?$AA?0?$AAR?$AAi?$AAg?$AAh?$AAt@
  00028	6a 02		 push	 2
  0002a	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0002f	83 c4 18	 add	 esp, 24			; 00000018H

; 129  : }

  00032	8b e5		 mov	 esp, ebp
  00034	5d		 pop	 ebp
  00035	c3		 ret	 0
?DebugDump@COverscanAspectFilter@@UAEXXZ ENDP		; COverscanAspectFilter::DebugDump
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectrect.h
_TEXT	ENDS
;	COMDAT ?DebugDump@CAspectRect@@QAEXPB_W@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Desc$ = 8						; size = 4
?DebugDump@CAspectRect@@QAEXPB_W@Z PROC			; CAspectRect::DebugDump, COMDAT
; _this$ = ecx

; 414  :     {

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

; 415  :         LOG(2, _T("%s: L:%04i R:%04i T:%04i B:%04i [SA: %.4lf TA: %.4lf Adj:%.4lf]\n"),Desc, left,right,top,bottom,sourceAspect(),targetAspect(),m_OutputAdjustment);

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	83 ec 08	 sub	 esp, 8
  0000d	dd 40 10	 fld	 QWORD PTR [eax+16]
  00010	dd 1c 24	 fstp	 QWORD PTR [esp]
  00013	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00016	e8 00 00 00 00	 call	 ?targetAspect@CAspectRect@@QAENXZ ; CAspectRect::targetAspect
  0001b	83 ec 08	 sub	 esp, 8
  0001e	dd 1c 24	 fstp	 QWORD PTR [esp]
  00021	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00024	e8 00 00 00 00	 call	 ?sourceAspect@CAspectRect@@QAENXZ ; CAspectRect::sourceAspect
  00029	83 ec 08	 sub	 esp, 8
  0002c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0002f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00032	8b 51 0c	 mov	 edx, DWORD PTR [ecx+12]
  00035	52		 push	 edx
  00036	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00039	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  0003c	51		 push	 ecx
  0003d	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00040	8b 42 08	 mov	 eax, DWORD PTR [edx+8]
  00043	50		 push	 eax
  00044	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00047	8b 11		 mov	 edx, DWORD PTR [ecx]
  00049	52		 push	 edx
  0004a	8b 45 08	 mov	 eax, DWORD PTR _Desc$[ebp]
  0004d	50		 push	 eax
  0004e	68 00 00 00 00	 push	 OFFSET ??_C@_1IC@PKOADFGL@?$AA?$CF?$AAs?$AA?3?$AA?5?$AAL?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAR?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAT?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5?$AAB?$AA?3?$AA?$CF?$AA0?$AA4?$AAi?$AA?5@
  00053	6a 02		 push	 2
  00055	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0005a	83 c4 34	 add	 esp, 52			; 00000034H

; 416  :     }

  0005d	8b e5		 mov	 esp, ebp
  0005f	5d		 pop	 ebp
  00060	c2 04 00	 ret	 4
?DebugDump@CAspectRect@@QAEXPB_W@Z ENDP			; CAspectRect::DebugDump
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\aspectfilters.cpp
;	COMDAT ?adjustAspect@CResizeWindowAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z
_TEXT	SEGMENT
_this$ = -92						; size = 4
_TempRect$143050 = -88					; size = 16
_screenRect$143048 = -72				; size = 16
_currentClientRect$ = -56				; size = 24
_OrigClientTop$ = -28					; size = 4
_newRect$ = -24						; size = 24
_ar$ = 8						; size = 4
_RequestRerun$ = 12					; size = 4
?adjustAspect@CResizeWindowAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z PROC ; CResizeWindowAspectFilter::adjustAspect, COMDAT
; _this$ = ecx

; 568  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 5c	 sub	 esp, 92			; 0000005cH
  00006	89 4d a4	 mov	 DWORD PTR _this$[ebp], ecx

; 569  :     LONG OrigClientTop = 0;

  00009	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR _OrigClientTop$[ebp], 0

; 570  : 
; 571  :     // See if we need to resize the window
; 572  :     CAspectRect currentClientRect;

  00010	8d 4d c8	 lea	 ecx, DWORD PTR _currentClientRect$[ebp]
  00013	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@XZ	; CAspectRect::CAspectRect

; 573  :     CAspectRect newRect = ar.m_CurrentOverlayDestRect;

  00018	8b 45 08	 mov	 eax, DWORD PTR _ar$[ebp]
  0001b	83 c0 50	 add	 eax, 80			; 00000050H
  0001e	50		 push	 eax
  0001f	8d 4d e8	 lea	 ecx, DWORD PTR _newRect$[ebp]
  00022	e8 00 00 00 00	 call	 ??0CAspectRect@@QAE@ABV0@@Z ; CAspectRect::CAspectRect

; 574  : 
; 575  :     /*currentClientRect.setToClient(hWnd,TRUE);
; 576  :     if (IsStatusBarVisible())
; 577  :     {
; 578  :         currentClientRect.bottom -= StatusBar_Height();
; 579  :     }*/
; 580  :     GetDisplayAreaRect(GetMainWnd(), &currentClientRect, TRUE);

  00027	6a 01		 push	 1
  00029	8d 4d c8	 lea	 ecx, DWORD PTR _currentClientRect$[ebp]
  0002c	51		 push	 ecx
  0002d	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  00032	50		 push	 eax
  00033	e8 00 00 00 00	 call	 ?GetDisplayAreaRect@@YAHPAUHWND__@@PAUtagRECT@@H@Z ; GetDisplayAreaRect
  00038	83 c4 0c	 add	 esp, 12			; 0000000cH

; 581  :     ClientToScreen(GetMainWnd(), (POINT*) &currentClientRect.left);

  0003b	8d 55 c8	 lea	 edx, DWORD PTR _currentClientRect$[ebp]
  0003e	52		 push	 edx
  0003f	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  00044	50		 push	 eax
  00045	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__ClientToScreen@8

; 582  :     ClientToScreen(GetMainWnd(), (POINT*) &currentClientRect.right);

  0004b	8d 45 d0	 lea	 eax, DWORD PTR _currentClientRect$[ebp+8]
  0004e	50		 push	 eax
  0004f	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  00054	50		 push	 eax
  00055	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__ClientToScreen@8

; 583  : 
; 584  :     #ifdef __ASPECTFILTER_DEBUG__
; 585  :         currentClientRect.DebugDump(_T("Current Client Rect"));
; 586  :         newRect.DebugDump(_T("Target Client Rect"));
; 587  :     #endif
; 588  : 
; 589  :     // Do we match????
; 590  :     if (!currentClientRect.tolerantEquals(newRect,8))

  0005b	6a 08		 push	 8
  0005d	8d 4d e8	 lea	 ecx, DWORD PTR _newRect$[ebp]
  00060	51		 push	 ecx
  00061	8d 4d c8	 lea	 ecx, DWORD PTR _currentClientRect$[ebp]
  00064	e8 00 00 00 00	 call	 ?tolerantEquals@CAspectRect@@QAEHABV1@H@Z ; CAspectRect::tolerantEquals
  00069	85 c0		 test	 eax, eax
  0006b	0f 85 03 01 00
	00		 jne	 $LN2@adjustAspe@6

; 591  :     {
; 592  :         // Nope!  Scale the existing window using _T("smart") logic to grow or shrink the window as needed
; 593  :         RECT screenRect = {0,0,GetSystemMetrics(SM_CXSCREEN),GetSystemMetrics(SM_CYSCREEN) };

  00071	c7 45 b8 00 00
	00 00		 mov	 DWORD PTR _screenRect$143048[ebp], 0
  00078	c7 45 bc 00 00
	00 00		 mov	 DWORD PTR _screenRect$143048[ebp+4], 0
  0007f	6a 00		 push	 0
  00081	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  00086	89 45 c0	 mov	 DWORD PTR _screenRect$143048[ebp+8], eax
  00089	6a 01		 push	 1
  0008b	e8 00 00 00 00	 call	 _xGetSystemMetrics@4
  00090	89 45 c4	 mov	 DWORD PTR _screenRect$143048[ebp+12], eax

; 594  :         //
; 595  :         // Laurent's comment
; 596  :         // Maybe the two following lines should replace the previous one.
; 597  :         //
; 598  :         //RECT screenRect;
; 599  :         //GetMonitorRect(hWnd, &screenRect);
; 600  : 
; 601  :         currentClientRect.adjustSourceAspectSmart(newRect.sourceAspect(),screenRect);

  00093	6a 01		 push	 1
  00095	8d 55 b8	 lea	 edx, DWORD PTR _screenRect$143048[ebp]
  00098	52		 push	 edx
  00099	8d 4d e8	 lea	 ecx, DWORD PTR _newRect$[ebp]
  0009c	e8 00 00 00 00	 call	 ?sourceAspect@CAspectRect@@QAENXZ ; CAspectRect::sourceAspect
  000a1	83 ec 08	 sub	 esp, 8
  000a4	dd 1c 24	 fstp	 QWORD PTR [esp]
  000a7	8d 4d c8	 lea	 ecx, DWORD PTR _currentClientRect$[ebp]
  000aa	e8 00 00 00 00	 call	 ?adjustSourceAspectSmart@CAspectRect@@QAEXNAAUtagRECT@@H@Z ; CAspectRect::adjustSourceAspectSmart

; 602  : 
; 603  :         #ifdef __ASPECTFILTER_DEBUG__
; 604  :             currentClientRect.DebugDump(_T("New Client Rect"));
; 605  :         #endif
; 606  : 
; 607  :         // Add the status bar back in...
; 608  :         /*if (IsStatusBarVisible())
; 609  :         {
; 610  :             currentClientRect.bottom += StatusBar_Height();
; 611  :         }*/
; 612  : 
; 613  :         currentClientRect.enforceMinSize(8);

  000af	6a 08		 push	 8
  000b1	8d 4d c8	 lea	 ecx, DWORD PTR _currentClientRect$[ebp]
  000b4	e8 00 00 00 00	 call	 ?enforceMinSize@CAspectRect@@QAEXH@Z ; CAspectRect::enforceMinSize

; 614  : 
; 615  :         // Convert client rect to window rect...
; 616  :         AddDisplayAreaRect(GetMainWnd(), &currentClientRect);

  000b9	8d 45 c8	 lea	 eax, DWORD PTR _currentClientRect$[ebp]
  000bc	50		 push	 eax
  000bd	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  000c2	50		 push	 eax
  000c3	e8 00 00 00 00	 call	 ?AddDisplayAreaRect@@YAXPAUHWND__@@PAUtagRECT@@@Z ; AddDisplayAreaRect
  000c8	83 c4 08	 add	 esp, 8

; 617  : 
; 618  :         OrigClientTop = currentClientRect.top;

  000cb	8b 4d cc	 mov	 ecx, DWORD PTR _currentClientRect$[ebp+4]
  000ce	89 4d e4	 mov	 DWORD PTR _OrigClientTop$[ebp], ecx

; 619  :         AdjustWindowRectEx(&currentClientRect,
; 620  :                            GetWindowLong(GetMainWnd(), GWL_STYLE),
; 621  :                            FALSE, /* we deal with the menu later */
; 622  :                            GetWindowLong(GetMainWnd(), GWL_EXSTYLE));

  000d1	6a ec		 push	 -20			; ffffffecH
  000d3	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  000d8	50		 push	 eax
  000d9	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowLongW@8
  000df	50		 push	 eax
  000e0	6a 00		 push	 0
  000e2	6a f0		 push	 -16			; fffffff0H
  000e4	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  000e9	50		 push	 eax
  000ea	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowLongW@8
  000f0	50		 push	 eax
  000f1	8d 55 c8	 lea	 edx, DWORD PTR _currentClientRect$[ebp]
  000f4	52		 push	 edx
  000f5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__AdjustWindowRectEx@16

; 623  :         // Adjust for the menu bar
; 624  :         // Workaround since AdjustWindowRectEx does not work correctly with a wrapped menu bar
; 625  :         if(bShowMenu)

  000fb	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?bShowMenu@@3HA, 0 ; bShowMenu
  00102	74 3d		 je	 SHORT $LN1@adjustAspe@6

; 626  :         {
; 627  :             RECT TempRect = currentClientRect;

  00104	8b 45 c8	 mov	 eax, DWORD PTR _currentClientRect$[ebp]
  00107	89 45 a8	 mov	 DWORD PTR _TempRect$143050[ebp], eax
  0010a	8b 4d cc	 mov	 ecx, DWORD PTR _currentClientRect$[ebp+4]
  0010d	89 4d ac	 mov	 DWORD PTR _TempRect$143050[ebp+4], ecx
  00110	8b 55 d0	 mov	 edx, DWORD PTR _currentClientRect$[ebp+8]
  00113	89 55 b0	 mov	 DWORD PTR _TempRect$143050[ebp+8], edx
  00116	8b 45 d4	 mov	 eax, DWORD PTR _currentClientRect$[ebp+12]
  00119	89 45 b4	 mov	 DWORD PTR _TempRect$143050[ebp+12], eax

; 628  :             SendMessage(GetMainWnd(), WM_NCCALCSIZE, FALSE, (LPARAM)(LPRECT)&TempRect);

  0011c	8d 4d a8	 lea	 ecx, DWORD PTR _TempRect$143050[ebp]
  0011f	51		 push	 ecx
  00120	6a 00		 push	 0
  00122	68 83 00 00 00	 push	 131			; 00000083H
  00127	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  0012c	50		 push	 eax
  0012d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 629  :             currentClientRect.top -= TempRect.top - OrigClientTop;

  00133	8b 55 ac	 mov	 edx, DWORD PTR _TempRect$143050[ebp+4]
  00136	2b 55 e4	 sub	 edx, DWORD PTR _OrigClientTop$[ebp]
  00139	8b 45 cc	 mov	 eax, DWORD PTR _currentClientRect$[ebp+4]
  0013c	2b c2		 sub	 eax, edx
  0013e	89 45 cc	 mov	 DWORD PTR _currentClientRect$[ebp+4], eax
$LN1@adjustAspe@6:

; 630  :         }
; 631  : 
; 632  :         #ifdef __ASPECTFILTER_DEBUG__
; 633  :             currentClientRect.DebugDump(_T("New Window Pos"));
; 634  :         #endif
; 635  : 
; 636  :         // Set the window...
; 637  :         SetWindowPos(GetMainWnd(), NULL,currentClientRect.left,currentClientRect.top,currentClientRect.width(),currentClientRect.height(),
; 638  :                      SWP_NOZORDER);

  00141	6a 04		 push	 4
  00143	8d 4d c8	 lea	 ecx, DWORD PTR _currentClientRect$[ebp]
  00146	e8 00 00 00 00	 call	 ?height@CAspectRect@@QAEHXZ ; CAspectRect::height
  0014b	50		 push	 eax
  0014c	8d 4d c8	 lea	 ecx, DWORD PTR _currentClientRect$[ebp]
  0014f	e8 00 00 00 00	 call	 ?width@CAspectRect@@QAEHXZ ; CAspectRect::width
  00154	50		 push	 eax
  00155	8b 4d cc	 mov	 ecx, DWORD PTR _currentClientRect$[ebp+4]
  00158	51		 push	 ecx
  00159	8b 55 c8	 mov	 edx, DWORD PTR _currentClientRect$[ebp]
  0015c	52		 push	 edx
  0015d	6a 00		 push	 0
  0015f	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  00164	50		 push	 eax
  00165	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowPos@28

; 639  : 
; 640  :         #ifdef __ASPECTFILTER_DEBUG__
; 641  :             currentClientRect.setToClient(hWnd,TRUE);
; 642  :             if (IsStatusBarVisible())
; 643  :             {
; 644  :                 currentClientRect.bottom -= StatusBar_Height();
; 645  :             }
; 646  :             currentClientRect.DebugDump(_T("Actual New Client  "));
; 647  :         #endif
; 648  : 
; 649  :         // Recalculate the overlay
; 650  :         RequestRerun = TRUE;

  0016b	8b 45 0c	 mov	 eax, DWORD PTR _RequestRerun$[ebp]
  0016e	c7 00 01 00 00
	00		 mov	 DWORD PTR [eax], 1
$LN2@adjustAspe@6:

; 651  :     }
; 652  : }

  00174	8b e5		 mov	 esp, ebp
  00176	5d		 pop	 ebp
  00177	c2 08 00	 ret	 8
?adjustAspect@CResizeWindowAspectFilter@@UAEXAAVCAspectRectangles@@AAH@Z ENDP ; CResizeWindowAspectFilter::adjustAspect
_TEXT	ENDS
PUBLIC	?DebugDump@CAspectRectangles@@QAEXXZ		; CAspectRectangles::DebugDump
; Function compile flags: /Odtp
;	COMDAT ?DebugDump@CAspectRectangles@@QAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?DebugDump@CAspectRectangles@@QAEXXZ PROC		; CAspectRectangles::DebugDump, COMDAT
; _this$ = ecx

; 85   : {

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

; 86   :     m_CurrentOverlaySrcRect.DebugDump(_T("SRC "));

  00007	68 00 00 00 00	 push	 OFFSET ??_C@_19HAKLIJIF@?$AAS?$AAR?$AAC?$AA?5?$AA?$AA@
  0000c	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000f	83 c1 68	 add	 ecx, 104		; 00000068H
  00012	e8 00 00 00 00	 call	 ?DebugDump@CAspectRect@@QAEXPB_W@Z ; CAspectRect::DebugDump

; 87   :     m_CurrentOverlayDestRect.DebugDump(_T("DEST"));

  00017	68 00 00 00 00	 push	 OFFSET ??_C@_19CECMBOHG@?$AAD?$AAE?$AAS?$AAT?$AA?$AA@
  0001c	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001f	83 c1 50	 add	 ecx, 80			; 00000050H
  00022	e8 00 00 00 00	 call	 ?DebugDump@CAspectRect@@QAEXPB_W@Z ; CAspectRect::DebugDump

; 88   : }

  00027	8b e5		 mov	 esp, ebp
  00029	5d		 pop	 ebp
  0002a	c3		 ret	 0
?DebugDump@CAspectRectangles@@QAEXXZ ENDP		; CAspectRectangles::DebugDump
END
