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

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

INCLUDELIB OLDNAMES

PUBLIC	??_R4CDShowObject@@6B@				; CDShowObject::`RTTI Complete Object Locator'
PUBLIC	??0?$CComPtr@UIGraphBuilder@@@ATL@@QAE@PAUIGraphBuilder@@@Z ; ATL::CComPtr<IGraphBuilder>::CComPtr<IGraphBuilder>
PUBLIC	??_GCDShowObject@@UAEPAXI@Z			; CDShowObject::`scalar deleting destructor'
PUBLIC	??_7CDShowObject@@6B@				; CDShowObject::`vftable'
EXTRN	??_ECDShowObject@@UAEPAXI@Z:PROC		; CDShowObject::`vector deleting destructor'
;	COMDAT ??_7CDShowObject@@6B@
CONST	SEGMENT
??_7CDShowObject@@6B@ DD FLAT:??_R4CDShowObject@@6B@	; CDShowObject::`vftable'
	DD	FLAT:??_ECDShowObject@@UAEPAXI@Z
	DD	FLAT:__purecall
CONST	ENDS
;	COMDAT ??_R4CDShowObject@@6B@
rdata$r	SEGMENT
??_R4CDShowObject@@6B@ DD 00H				; CDShowObject::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCDShowObject@@@8
	DD	FLAT:??_R3CDShowObject@@8
; Function compile flags: /Odtp
; File c:\tools\winddk\3790.1830\inc\atl30\atlbase.h
;	COMDAT ??0?$CComPtr@UIGraphBuilder@@@ATL@@QAE@PAUIGraphBuilder@@@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_lp$ = 8						; size = 4
??0?$CComPtr@UIGraphBuilder@@@ATL@@QAE@PAUIGraphBuilder@@@Z PROC ; ATL::CComPtr<IGraphBuilder>::CComPtr<IGraphBuilder>, COMDAT
; _this$ = ecx

; 674  :         CComPtr(T* lp)

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

; 675  :         {
; 676  :                 if ((p = lp) != NULL)

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 4d 08	 mov	 ecx, DWORD PTR _lp$[ebp]
  0000d	89 08		 mov	 DWORD PTR [eax], ecx
  0000f	83 7d 08 00	 cmp	 DWORD PTR _lp$[ebp], 0
  00013	74 12		 je	 SHORT $LN2@CComPtr@13

; 677  :                         p->AddRef();

  00015	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00018	8b 02		 mov	 eax, DWORD PTR [edx]
  0001a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001d	8b 11		 mov	 edx, DWORD PTR [ecx]
  0001f	8b 00		 mov	 eax, DWORD PTR [eax]
  00021	52		 push	 edx
  00022	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  00025	ff d1		 call	 ecx
$LN2@CComPtr@13:

; 678  :         }

  00027	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0002a	8b e5		 mov	 esp, ebp
  0002c	5d		 pop	 ebp
  0002d	c2 04 00	 ret	 4
??0?$CComPtr@UIGraphBuilder@@@ATL@@QAE@PAUIGraphBuilder@@@Z ENDP ; ATL::CComPtr<IGraphBuilder>::CComPtr<IGraphBuilder>
PUBLIC	??1CDShowObject@@UAE@XZ				; CDShowObject::~CDShowObject
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\dshowsource\dsobject.cpp
xdata$x	SEGMENT
__unwindtable$??1CDShowObject@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CDShowObject@@UAE@XZ$0
__ehfuncinfo$??1CDShowObject@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CDShowObject@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CDShowObject@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CDShowObject@@UAE@XZ PROC				; CDShowObject::~CDShowObject, COMDAT
; _this$ = ecx

; 41   : {

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

; 42   : 
; 43   : }

  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?$CComPtr@UIGraphBuilder@@@ATL@@QAE@XZ ; ATL::CComPtr<IGraphBuilder>::~CComPtr<IGraphBuilder>
  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$??1CDShowObject@@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?$CComPtr@UIGraphBuilder@@@ATL@@QAE@XZ ; ATL::CComPtr<IGraphBuilder>::~CComPtr<IGraphBuilder>
__ehhandler$??1CDShowObject@@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$??1CDShowObject@@UAE@XZ
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CDShowObject@@UAE@XZ ENDP				; CDShowObject::~CDShowObject
; Function compile flags: /Odtp
;	COMDAT ??_GCDShowObject@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCDShowObject@@UAEPAXI@Z PROC			; CDShowObject::`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	 ??1CDShowObject@@UAE@XZ	; CDShowObject::~CDShowObject
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@53
  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@53:
  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
??_GCDShowObject@@UAEPAXI@Z ENDP			; CDShowObject::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z	; CDShowObject::CDShowObject
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z$0
__ehfuncinfo$??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_pGraph$ = 8						; size = 4
??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z PROC		; CDShowObject::CDShowObject, COMDAT
; _this$ = ecx

; 36   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CDShowObject@@QAE@PAUIGraphBuilder@@@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 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00029	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CDShowObject@@6B@
  0002f	8b 4d 08	 mov	 ecx, DWORD PTR _pGraph$[ebp]
  00032	51		 push	 ecx
  00033	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00036	83 c1 04	 add	 ecx, 4
  00039	e8 00 00 00 00	 call	 ??0?$CComPtr@UIGraphBuilder@@@ATL@@QAE@PAUIGraphBuilder@@@Z ; ATL::CComPtr<IGraphBuilder>::CComPtr<IGraphBuilder>
  0003e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 37   :     _ASSERTE(pGraph!=NULL);
; 38   : }

  00045	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0004c	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  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	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z$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?$CComPtr@UIGraphBuilder@@@ATL@@QAE@XZ ; ATL::CComPtr<IGraphBuilder>::~CComPtr<IGraphBuilder>
__ehhandler$??0CDShowObject@@QAE@PAUIGraphBuilder@@@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 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$??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CDShowObject@@QAE@PAUIGraphBuilder@@@Z ENDP		; CDShowObject::CDShowObject
END
