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

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

INCLUDELIB OLDNAMES

PUBLIC	?DialogProc@COpenDlg@@EAEHPAUHWND__@@IIJ@Z	; COpenDlg::DialogProc
PUBLIC	??_R4COpenDlg@@6B@				; COpenDlg::`RTTI Complete Object Locator'
PUBLIC	??_R3COpenDlg@@8				; COpenDlg::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2COpenDlg@@8				; COpenDlg::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@COpenDlg@@8			; COpenDlg::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCOpenDlg@@@8				; COpenDlg `RTTI Type Descriptor'
PUBLIC	??1COpenDlg@@UAE@XZ				; COpenDlg::~COpenDlg
PUBLIC	??_GCOpenDlg@@UAEPAXI@Z				; COpenDlg::`scalar deleting destructor'
PUBLIC	??B?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QBEHXZ ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::operator int
PUBLIC	??0?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>
PUBLIC	??0?$DynamicFunctionS2@JPAUHWND__@@K@@QAE@PB_WPBD@Z ; DynamicFunctionS2<long,HWND__ *,unsigned long>::DynamicFunctionS2<long,HWND__ *,unsigned long>
PUBLIC	??R?$DynamicFunctionS2@JPAUHWND__@@K@@QBEJPAUHWND__@@K@Z ; DynamicFunctionS2<long,HWND__ *,unsigned long>::operator()
PUBLIC	??_C@_0P@GDBCDEPA@SHAutoComplete?$AA@		; `string'
PUBLIC	??_C@_1BI@OCJIFECI@?$AAS?$AAH?$AAL?$AAW?$AAA?$AAP?$AAI?$AA?4?$AAD?$AAL?$AAL?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CKE@NNDMIIBO@?$AAA?$AAl?$AAl?$AA?5?$AAF?$AAi?$AAl?$AAe?$AAs?$AA?$AA?$AA?$CK?$AA?4?$AA?$CK?$AA?$DL?$AA?$AA?$AAA?$AAl?$AAl?$AA?5?$AAS?$AAu?$AAp?$AAp?$AAo?$AAr?$AAt?$AAe?$AAd?$AA?5?$AAF?$AAi?$AAl@ ; `string'
PUBLIC	??_7COpenDlg@@6B@				; COpenDlg::`vftable'
EXTRN	??_ECOpenDlg@@UAEPAXI@Z:PROC			; COpenDlg::`vector deleting destructor'
;	COMDAT ??_7COpenDlg@@6B@
CONST	SEGMENT
??_7COpenDlg@@6B@ DD FLAT:??_R4COpenDlg@@6B@		; COpenDlg::`vftable'
	DD	FLAT:??_ECOpenDlg@@UAEPAXI@Z
	DD	FLAT:?DialogProc@COpenDlg@@EAEHPAUHWND__@@IIJ@Z
CONST	ENDS
;	COMDAT ??_R4COpenDlg@@6B@
rdata$r	SEGMENT
??_R4COpenDlg@@6B@ DD 00H				; COpenDlg::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCOpenDlg@@@8
	DD	FLAT:??_R3COpenDlg@@8
rdata$r	ENDS
;	COMDAT ??_R3COpenDlg@@8
rdata$r	SEGMENT
??_R3COpenDlg@@8 DD 00H					; COpenDlg::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2COpenDlg@@8
rdata$r	ENDS
;	COMDAT ??_R2COpenDlg@@8
rdata$r	SEGMENT
??_R2COpenDlg@@8 DD FLAT:??_R1A@?0A@EA@COpenDlg@@8	; COpenDlg::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CDSDialog@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@COpenDlg@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@COpenDlg@@8 DD FLAT:??_R0?AVCOpenDlg@@@8	; COpenDlg::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3COpenDlg@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCOpenDlg@@@8
_DATA	SEGMENT
??_R0?AVCOpenDlg@@@8 DD FLAT:??_7type_info@@6B@		; COpenDlg `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCOpenDlg@@', 00H
_DATA	ENDS
;	COMDAT ??_C@_1CKE@NNDMIIBO@?$AAA?$AAl?$AAl?$AA?5?$AAF?$AAi?$AAl?$AAe?$AAs?$AA?$AA?$AA?$CK?$AA?4?$AA?$CK?$AA?$DL?$AA?$AA?$AAA?$AAl?$AAl?$AA?5?$AAS?$AAu?$AAp?$AAp?$AAo?$AAr?$AAt?$AAe?$AAd?$AA?5?$AAF?$AAi?$AAl@
CONST	SEGMENT
??_C@_1CKE@NNDMIIBO@?$AAA?$AAl?$AAl?$AA?5?$AAF?$AAi?$AAl?$AAe?$AAs?$AA?$AA?$AA?$CK?$AA?4?$AA?$CK?$AA?$DL?$AA?$AA?$AAA?$AAl?$AAl?$AA?5?$AAS?$AAu?$AAp?$AAp?$AAo?$AAr?$AAt?$AAe?$AAd?$AA?5?$AAF?$AAi?$AAl@ DB 'A'
	DB	00H, 'l', 00H, 'l', 00H, ' ', 00H, 'F', 00H, 'i', 00H, 'l', 00H
	DB	'e', 00H, 's', 00H, 00H, 00H, '*', 00H, '.', 00H, '*', 00H, ';'
	DB	00H, 00H, 00H, 'A', 00H, 'l', 00H, 'l', 00H, ' ', 00H, 'S', 00H
	DB	'u', 00H, 'p', 00H, 'p', 00H, 'o', 00H, 'r', 00H, 't', 00H, 'e'
	DB	00H, 'd', 00H, ' ', 00H, 'F', 00H, 'i', 00H, 'l', 00H, 'e', 00H
	DB	's', 00H, 00H, 00H, '*', 00H, '.', 00H, 'd', 00H, '3', 00H, 'u'
	DB	00H, ';', 00H, '*', 00H, '.', 00H, 'p', 00H, 'a', 00H, 't', 00H
	DB	';', 00H, '*', 00H, '.', 00H, 't', 00H, 'i', 00H, 'f', 00H, ';'
	DB	00H, '*', 00H, '.', 00H, 't', 00H, 'i', 00H, 'f', 00H, 'f', 00H
	DB	';', 00H, '*', 00H, '.', 00H, 'j', 00H, 'p', 00H, 'g', 00H, ';'
	DB	00H, '*', 00H, '.', 00H, 'j', 00H, 'p', 00H, 'e', 00H, 'g', 00H
	DB	';', 00H, '*', 00H, '.', 00H, 'a', 00H, 'v', 00H, 'i', 00H, ';'
	DB	00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'g', 00H, ';', 00H
	DB	'*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'e', 00H, 'g', 00H, ';'
	DB	00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'e', 00H, ';', 00H
	DB	'*', 00H, '.', 00H, 'a', 00H, 's', 00H, 'f', 00H, ';', 00H, '*'
	DB	00H, '.', 00H, 'w', 00H, 'm', 00H, 'v', 00H, ';', 00H, '*', 00H
	DB	'.', 00H, 'g', 00H, 'r', 00H, 'f', 00H, 00H, 00H, 'T', 00H, 'I'
	DB	00H, 'F', 00H, 'F', 00H, ' ', 00H, 'F', 00H, 'i', 00H, 'l', 00H
	DB	'e', 00H, 's', 00H, 00H, 00H, '*', 00H, '.', 00H, 't', 00H, 'i'
	DB	00H, 'f', 00H, ';', 00H, '*', 00H, '.', 00H, 't', 00H, 'i', 00H
	DB	'f', 00H, 'f', 00H, 00H, 00H, 'J', 00H, 'P', 00H, 'E', 00H, 'G'
	DB	00H, ' ', 00H, 'F', 00H, 'i', 00H, 'l', 00H, 'e', 00H, 's', 00H
	DB	00H, 00H, '*', 00H, '.', 00H, 'j', 00H, 'p', 00H, 'g', 00H, ';'
	DB	00H, '*', 00H, '.', 00H, 'j', 00H, 'p', 00H, 'e', 00H, 'g', 00H
	DB	00H, 00H, 'D', 00H, 'S', 00H, 'c', 00H, 'a', 00H, 'l', 00H, 'e'
	DB	00H, 'r', 00H, ' ', 00H, 'P', 00H, 'l', 00H, 'a', 00H, 'y', 00H
	DB	'l', 00H, 'i', 00H, 's', 00H, 't', 00H, 's', 00H, 00H, 00H, '*'
	DB	00H, '.', 00H, 'd', 00H, '3', 00H, 'u', 00H, 00H, 00H, 'D', 00H
	DB	'S', 00H, 'c', 00H, 'a', 00H, 'l', 00H, 'e', 00H, 'r', 00H, ' '
	DB	00H, 'P', 00H, 'a', 00H, 't', 00H, 't', 00H, 'e', 00H, 'r', 00H
	DB	'n', 00H, 's', 00H, 00H, 00H, '*', 00H, '.', 00H, 'p', 00H, 'a'
	DB	00H, 't', 00H, 00H, 00H, 'M', 00H, 'e', 00H, 'd', 00H, 'i', 00H
	DB	'a', 00H, ' ', 00H, 'F', 00H, 'i', 00H, 'l', 00H, 'e', 00H, 's'
	DB	00H, ' ', 00H, '(', 00H, '*', 00H, '.', 00H, 'a', 00H, 'v', 00H
	DB	'i', 00H, ';', 00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'g'
	DB	00H, ';', 00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'e', 00H
	DB	'g', 00H, ';', 00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'e'
	DB	00H, ';', 00H, '*', 00H, '.', 00H, 'a', 00H, 's', 00H, 'f', 00H
	DB	';', 00H, '*', 00H, '.', 00H, 'w', 00H, 'm', 00H, 'v', 00H, ')'
	DB	00H, 00H, 00H, '*', 00H, '.', 00H, 'a', 00H, 'v', 00H, 'i', 00H
	DB	';', 00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'g', 00H, ';'
	DB	00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'e', 00H, 'g', 00H
	DB	';', 00H, '*', 00H, '.', 00H, 'm', 00H, 'p', 00H, 'e', 00H, ';'
	DB	00H, '*', 00H, '.', 00H, 'a', 00H, 's', 00H, 'f', 00H, ';', 00H
	DB	'*', 00H, '.', 00H, 'w', 00H, 'm', 00H, 'v', 00H, 00H, 00H, 'G'
	DB	00H, 'r', 00H, 'a', 00H, 'p', 00H, 'h', 00H, 'E', 00H, 'd', 00H
	DB	'i', 00H, 't', 00H, ' ', 00H, 'F', 00H, 'i', 00H, 'l', 00H, 't'
	DB	00H, 'e', 00H, 'r', 00H, ' ', 00H, 'G', 00H, 'r', 00H, 'a', 00H
	DB	'p', 00H, 'h', 00H, 's', 00H, ' ', 00H, '(', 00H, '*', 00H, '.'
	DB	00H, 'g', 00H, 'r', 00H, 'f', 00H, ')', 00H, 00H, 00H, '*', 00H
	DB	'.', 00H, 'g', 00H, 'r', 00H, 'f', 00H, 00H, 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BI@OCJIFECI@?$AAS?$AAH?$AAL?$AAW?$AAA?$AAP?$AAI?$AA?4?$AAD?$AAL?$AAL?$AA?$AA@
CONST	SEGMENT
??_C@_1BI@OCJIFECI@?$AAS?$AAH?$AAL?$AAW?$AAA?$AAP?$AAI?$AA?4?$AAD?$AAL?$AAL?$AA?$AA@ DB 'S'
	DB	00H, 'H', 00H, 'L', 00H, 'W', 00H, 'A', 00H, 'P', 00H, 'I', 00H
	DB	'.', 00H, 'D', 00H, 'L', 00H, 'L', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0P@GDBCDEPA@SHAutoComplete?$AA@
CONST	SEGMENT
??_C@_0P@GDBCDEPA@SHAutoComplete?$AA@ DB 'SHAutoComplete', 00H ; `string'
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\dynamicfunction.h
;	COMDAT ??B?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QBEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??B?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QBEHXZ PROC ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::operator int, COMDAT
; _this$ = ecx

; 39   :     {

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

; 40   :         return m_pFunc != 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	8b c1		 mov	 eax, ecx

; 41   :     }

  00014	8b e5		 mov	 esp, ebp
  00016	5d		 pop	 ebp
  00017	c3		 ret	 0
??B?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QBEHXZ ENDP ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::operator int
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??R?$DynamicFunctionS2@JPAUHWND__@@K@@QBEJPAUHWND__@@K@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Param1$ = 8						; size = 4
_Param2$ = 12						; size = 4
??R?$DynamicFunctionS2@JPAUHWND__@@K@@QBEJPAUHWND__@@K@Z PROC ; DynamicFunctionS2<long,HWND__ *,unsigned long>::operator(), COMDAT
; _this$ = ecx

; 106  :     {

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

; 107  :         return m_pFunc(Param1, Param2);

  00007	8b 45 0c	 mov	 eax, DWORD PTR _Param2$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 08	 mov	 ecx, DWORD PTR _Param1$[ebp]
  0000e	51		 push	 ecx
  0000f	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00012	8b 02		 mov	 eax, DWORD PTR [edx]
  00014	ff d0		 call	 eax

; 108  :     }

  00016	8b e5		 mov	 esp, ebp
  00018	5d		 pop	 ebp
  00019	c2 08 00	 ret	 8
??R?$DynamicFunctionS2@JPAUHWND__@@K@@QBEJPAUHWND__@@K@Z ENDP ; DynamicFunctionS2<long,HWND__ *,unsigned long>::operator()
_TEXT	ENDS
PUBLIC	__$ArrayPad$
PUBLIC	?OnBrowse@COpenDlg@@AAEXPAUHWND__@@@Z		; COpenDlg::OnBrowse
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\opendlg.cpp
;	COMDAT ?OnBrowse@COpenDlg@@AAEXPAUHWND__@@@Z
_TEXT	SEGMENT
_this$ = -612						; size = 4
_OpenFileInfo$ = -608					; size = 76
_FilePath$ = -528					; size = 520
__$ArrayPad$ = -8					; size = 4
_FileFilters$ = -4					; size = 4
_hDlg$ = 8						; size = 4
?OnBrowse@COpenDlg@@AAEXPAUHWND__@@@Z PROC		; COpenDlg::OnBrowse, COMDAT
; _this$ = ecx

; 96   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	81 ec 64 02 00
	00		 sub	 esp, 612		; 00000264H
  00009	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0000e	33 c5		 xor	 eax, ebp
  00010	89 45 f8	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  00013	89 8d 9c fd ff
	ff		 mov	 DWORD PTR _this$[ebp], ecx

; 97   :     OPENFILENAME OpenFileInfo;
; 98   :     TCHAR FilePath[MAX_PATH];
; 99   :     TCHAR* FileFilters;
; 100  :     FileFilters =
; 101  :                             _T("All Files\0*.*;\0")
; 102  :     #ifndef WANT_DSHOW_SUPPORT
; 103  :                             _T("All Supported Files\0*.d3u;*.pat;*.tif;*.tiff;*.jpg;*.jpeg;\0")
; 104  :     #else
; 105  :                             _T("All Supported Files\0*.d3u;*.pat;*.tif;*.tiff;*.jpg;*.jpeg;*.avi;*.mpg;*.mpeg;*.mpe;*.asf;*.wmv;*.grf\0")
; 106  :     #endif
; 107  :                             _T("TIFF Files\0*.tif;*.tiff\0")
; 108  :                             _T("JPEG Files\0*.jpg;*.jpeg\0")
; 109  :                             _T("DScaler Playlists\0*.d3u\0")
; 110  :                             _T("DScaler Patterns\0*.pat\0")
; 111  :     #ifdef WANT_DSHOW_SUPPORT
; 112  :                             _T("Media Files (*.avi;*.mpg;*.mpeg;*.mpe;*.asf;*.wmv)\0*.avi;*.mpg;*.mpeg;*.mpe;*.asf;*.wmv\0")
; 113  :                             _T("GraphEdit Filter Graphs (*.grf)\0*.grf\0")
; 114  :     #endif
; 115  :                             ;

  00019	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _FileFilters$[ebp], OFFSET ??_C@_1CKE@NNDMIIBO@?$AAA?$AAl?$AAl?$AA?5?$AAF?$AAi?$AAl?$AAe?$AAs?$AA?$AA?$AA?$CK?$AA?4?$AA?$CK?$AA?$DL?$AA?$AA?$AAA?$AAl?$AAl?$AA?5?$AAS?$AAu?$AAp?$AAp?$AAo?$AAr?$AAt?$AAe?$AAd?$AA?5?$AAF?$AAi?$AAl@

; 116  : 
; 117  :     FilePath[0] = 0;

  00020	33 c0		 xor	 eax, eax
  00022	66 89 85 f0 fd
	ff ff		 mov	 WORD PTR _FilePath$[ebp], ax

; 118  :     ZeroMemory(&OpenFileInfo,sizeof(OpenFileInfo));

  00029	6a 4c		 push	 76			; 0000004cH
  0002b	6a 00		 push	 0
  0002d	8d 8d a0 fd ff
	ff		 lea	 ecx, DWORD PTR _OpenFileInfo$[ebp]
  00033	51		 push	 ecx
  00034	e8 00 00 00 00	 call	 _memset
  00039	83 c4 0c	 add	 esp, 12			; 0000000cH

; 119  :     OpenFileInfo.lStructSize = sizeof(OpenFileInfo);

  0003c	c7 85 a0 fd ff
	ff 4c 00 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp], 76 ; 0000004cH

; 120  :     OpenFileInfo.hwndOwner = hDlg;

  00046	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00049	89 95 a4 fd ff
	ff		 mov	 DWORD PTR _OpenFileInfo$[ebp+4], edx

; 121  :     OpenFileInfo.lpstrFilter = FileFilters;

  0004f	8b 45 fc	 mov	 eax, DWORD PTR _FileFilters$[ebp]
  00052	89 85 ac fd ff
	ff		 mov	 DWORD PTR _OpenFileInfo$[ebp+12], eax

; 122  :     OpenFileInfo.nFilterIndex = 2;

  00058	c7 85 b8 fd ff
	ff 02 00 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+24], 2

; 123  :     OpenFileInfo.lpstrCustomFilter = NULL;

  00062	c7 85 b0 fd ff
	ff 00 00 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+16], 0

; 124  :     OpenFileInfo.lpstrFile = FilePath;

  0006c	8d 8d f0 fd ff
	ff		 lea	 ecx, DWORD PTR _FilePath$[ebp]
  00072	89 8d bc fd ff
	ff		 mov	 DWORD PTR _OpenFileInfo$[ebp+28], ecx

; 125  :     OpenFileInfo.nMaxFile = sizeof(FilePath);

  00078	c7 85 c0 fd ff
	ff 08 02 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+32], 520 ; 00000208H

; 126  :     OpenFileInfo.lpstrFileTitle = NULL;

  00082	c7 85 c4 fd ff
	ff 00 00 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+36], 0

; 127  :     OpenFileInfo.lpstrInitialDir = NULL;

  0008c	c7 85 cc fd ff
	ff 00 00 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+44], 0

; 128  :     OpenFileInfo.lpstrTitle = NULL;

  00096	c7 85 d0 fd ff
	ff 00 00 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+48], 0

; 129  :     OpenFileInfo.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;

  000a0	c7 85 d4 fd ff
	ff 04 18 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+52], 6148 ; 00001804H

; 130  :     OpenFileInfo.lpstrDefExt = NULL;

  000aa	c7 85 dc fd ff
	ff 00 00 00 00	 mov	 DWORD PTR _OpenFileInfo$[ebp+60], 0

; 131  :     if(GetOpenFileName(&OpenFileInfo))

  000b4	8d 95 a0 fd ff
	ff		 lea	 edx, DWORD PTR _OpenFileInfo$[ebp]
  000ba	52		 push	 edx
  000bb	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetOpenFileNameW@4
  000c1	85 c0		 test	 eax, eax
  000c3	74 1d		 je	 SHORT $LN2@OnBrowse

; 132  :     {
; 133  :         SetWindowText(GetDlgItem(hDlg, IDC_OPEN_FILE), FilePath);

  000c5	8d 85 f0 fd ff
	ff		 lea	 eax, DWORD PTR _FilePath$[ebp]
  000cb	50		 push	 eax
  000cc	68 f3 05 00 00	 push	 1523			; 000005f3H
  000d1	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000d4	51		 push	 ecx
  000d5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000db	50		 push	 eax
  000dc	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8
$LN2@OnBrowse:

; 134  :     }
; 135  : }

  000e2	8b 4d f8	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  000e5	33 cd		 xor	 ecx, ebp
  000e7	e8 00 00 00 00	 call	 @__security_check_cookie@4
  000ec	8b e5		 mov	 esp, ebp
  000ee	5d		 pop	 ebp
  000ef	c2 04 00	 ret	 4
?OnBrowse@COpenDlg@@AAEXPAUHWND__@@@Z ENDP		; COpenDlg::OnBrowse
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1COpenDlg@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1COpenDlg@@UAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??1COpenDlg@@UAE@XZ$1
__ehfuncinfo$??1COpenDlg@@UAE@XZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??1COpenDlg@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1COpenDlg@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1COpenDlg@@UAE@XZ PROC				; COpenDlg::~COpenDlg, 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$??1COpenDlg@@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?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  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	 ??1CDSDialog@@UAE@XZ	; CDSDialog::~CDSDialog
  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$??1COpenDlg@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CDSDialog@@UAE@XZ	; CDSDialog::~CDSDialog
__unwindfunclet$??1COpenDlg@@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@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$??1COpenDlg@@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$??1COpenDlg@@UAE@XZ
  00029	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1COpenDlg@@UAE@XZ ENDP				; COpenDlg::~COpenDlg
; Function compile flags: /Odtp
;	COMDAT ??_GCOpenDlg@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCOpenDlg@@UAEPAXI@Z PROC				; COpenDlg::`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	 ??1COpenDlg@@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@147
  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@147:
  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
??_GCOpenDlg@@UAEPAXI@Z ENDP				; COpenDlg::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0COpenDlg@@QAE@XZ				; COpenDlg::COpenDlg
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0COpenDlg@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0COpenDlg@@QAE@XZ$0
	DD	00H
	DD	FLAT:__unwindfunclet$??0COpenDlg@@QAE@XZ$1
__ehfuncinfo$??0COpenDlg@@QAE@XZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$??0COpenDlg@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0COpenDlg@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0COpenDlg@@QAE@XZ PROC				; COpenDlg::COpenDlg, COMDAT
; _this$ = ecx

; 35   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0COpenDlg@@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	68 2c 01 00 00	 push	 300			; 0000012cH
  0002b	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0002e	e8 00 00 00 00	 call	 ??0CDSDialog@@QAE@PB_W@Z ; CDSDialog::CDSDialog
  00033	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0003a	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0003d	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7COpenDlg@@6B@
  00043	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00046	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00049	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0004e	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1

; 36   : }

  00052	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00059	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0005c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0005f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00066	59		 pop	 ecx
  00067	8b e5		 mov	 esp, ebp
  00069	5d		 pop	 ebp
  0006a	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0COpenDlg@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CDSDialog@@UAE@XZ	; CDSDialog::~CDSDialog
__unwindfunclet$??0COpenDlg@@QAE@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@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$??0COpenDlg@@QAE@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$??0COpenDlg@@QAE@XZ
  00029	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0COpenDlg@@QAE@XZ ENDP				; COpenDlg::COpenDlg
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\dynamicfunction.h
;	COMDAT ??0?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QAE@PB_WPBD@Z
_TEXT	SEGMENT
_this$ = -8						; size = 4
_LibraryModule$ = -4					; size = 4
_LibraryName$ = 8					; size = 4
_FunctionName$ = 12					; size = 4
??0?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QAE@PB_WPBD@Z PROC ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>, COMDAT
; _this$ = ecx

; 30   :     {

  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	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], 0

; 31   :         HMODULE LibraryModule = LibraryCache::GetLibraryHandle(LibraryName);

  00012	8b 4d 08	 mov	 ecx, DWORD PTR _LibraryName$[ebp]
  00015	51		 push	 ecx
  00016	e8 00 00 00 00	 call	 ?GetLibraryHandle@LibraryCache@@SAPAUHINSTANCE__@@PB_W@Z ; LibraryCache::GetLibraryHandle
  0001b	83 c4 04	 add	 esp, 4
  0001e	89 45 fc	 mov	 DWORD PTR _LibraryModule$[ebp], eax

; 32   :         if(LibraryModule)

  00021	83 7d fc 00	 cmp	 DWORD PTR _LibraryModule$[ebp], 0
  00025	74 13		 je	 SHORT $LN2@DynamicFun@17

; 33   :         {
; 34   :             m_pFunc = (FUNCTYPE)GetProcAddress(LibraryModule,FunctionName);

  00027	8b 55 0c	 mov	 edx, DWORD PTR _FunctionName$[ebp]
  0002a	52		 push	 edx
  0002b	8b 45 fc	 mov	 eax, DWORD PTR _LibraryModule$[ebp]
  0002e	50		 push	 eax
  0002f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetProcAddress@8
  00035	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00038	89 01		 mov	 DWORD PTR [ecx], eax
$LN2@DynamicFun@17:

; 35   :         }
; 36   :     }

  0003a	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0003d	8b e5		 mov	 esp, ebp
  0003f	5d		 pop	 ebp
  00040	c2 08 00	 ret	 8
??0?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$DynamicFunctionS2@JPAUHWND__@@K@@QAE@PB_WPBD@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_LibraryName$ = 8					; size = 4
_FunctionName$ = 12					; size = 4
??0?$DynamicFunctionS2@JPAUHWND__@@K@@QAE@PB_WPBD@Z PROC ; DynamicFunctionS2<long,HWND__ *,unsigned long>::DynamicFunctionS2<long,HWND__ *,unsigned long>, COMDAT
; _this$ = ecx

; 102  :     {

  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 _FunctionName$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 08	 mov	 ecx, DWORD PTR _LibraryName$[ebp]
  0000e	51		 push	 ecx
  0000f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00012	e8 00 00 00 00	 call	 ??0?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>

; 103  :     }

  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?$DynamicFunctionS2@JPAUHWND__@@K@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionS2<long,HWND__ *,unsigned long>::DynamicFunctionS2<long,HWND__ *,unsigned long>
_TEXT	ENDS
PUBLIC	?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z		; COpenDlg::OnOK
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\opendlg.cpp
xdata$x	SEGMENT
__unwindtable$?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z$0
__ehfuncinfo$?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z
_TEXT	SEGMENT
tv76 = -52						; size = 4
tv77 = -48						; size = 4
_this$ = -44						; size = 4
$T343711 = -40						; size = 28
__$EHRec$ = -12						; size = 12
_hDlg$ = 8						; size = 4
?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z PROC			; COpenDlg::OnOK, COMDAT
; _this$ = ecx

; 90   : {

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

; 91   :     m_FileName = GetDlgItemString(hDlg, IDC_OPEN_FILE);

  00028	68 f3 05 00 00	 push	 1523			; 000005f3H
  0002d	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00030	50		 push	 eax
  00031	8d 4d d8	 lea	 ecx, DWORD PTR $T343711[ebp]
  00034	51		 push	 ecx
  00035	e8 00 00 00 00	 call	 ?GetDlgItemString@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PAUHWND__@@H@Z ; GetDlgItemString
  0003a	83 c4 0c	 add	 esp, 12			; 0000000cH
  0003d	89 45 d0	 mov	 DWORD PTR tv77[ebp], eax
  00040	8b 55 d0	 mov	 edx, DWORD PTR tv77[ebp]
  00043	89 55 cc	 mov	 DWORD PTR tv76[ebp], edx
  00046	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0004d	8b 45 cc	 mov	 eax, DWORD PTR tv76[ebp]
  00050	50		 push	 eax
  00051	8b 4d d4	 mov	 ecx, DWORD PTR _this$[ebp]
  00054	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00057	e8 00 00 00 00	 call	 ??4?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator=
  0005c	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00063	8d 4d d8	 lea	 ecx, DWORD PTR $T343711[ebp]
  00066	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >

; 92   :     EndDialog(hDlg, IDOK);

  0006b	6a 01		 push	 1
  0006d	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00070	51		 push	 ecx
  00071	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EndDialog@8

; 93   : }

  00077	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0007a	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00081	59		 pop	 ecx
  00082	8b e5		 mov	 esp, ebp
  00084	5d		 pop	 ebp
  00085	c2 04 00	 ret	 4
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z$0:
  00000	8d 4d d8	 lea	 ecx, DWORD PTR $T343711[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a d4	 mov	 ecx, DWORD PTR [edx-44]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z ENDP			; COpenDlg::OnOK
PUBLIC	?OnCommand@COpenDlg@@AAEXPAUHWND__@@H0I@Z	; COpenDlg::OnCommand
; Function compile flags: /Odtp
;	COMDAT ?OnCommand@COpenDlg@@AAEXPAUHWND__@@H0I@Z
_TEXT	SEGMENT
tv64 = -8						; size = 4
_this$ = -4						; size = 4
_hDlg$ = 8						; size = 4
_id$ = 12						; size = 4
_hwndCtl$ = 16						; size = 4
_codeNotify$ = 20					; size = 4
?OnCommand@COpenDlg@@AAEXPAUHWND__@@H0I@Z PROC		; COpenDlg::OnCommand, COMDAT
; _this$ = ecx

; 73   : {

  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

; 74   :     switch(id)

  00009	8b 45 0c	 mov	 eax, DWORD PTR _id$[ebp]
  0000c	89 45 f8	 mov	 DWORD PTR tv64[ebp], eax
  0000f	83 7d f8 01	 cmp	 DWORD PTR tv64[ebp], 1
  00013	74 11		 je	 SHORT $LN3@OnCommand@4
  00015	83 7d f8 02	 cmp	 DWORD PTR tv64[ebp], 2
  00019	74 19		 je	 SHORT $LN2@OnCommand@4
  0001b	81 7d f8 87 05
	00 00		 cmp	 DWORD PTR tv64[ebp], 1415 ; 00000587H
  00022	74 1e		 je	 SHORT $LN1@OnCommand@4
  00024	eb 28		 jmp	 SHORT $LN6@OnCommand@4
$LN3@OnCommand@4:

; 75   :     {
; 76   :     case IDOK:
; 77   :         OnOK(hDlg);

  00026	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00029	51		 push	 ecx
  0002a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	e8 00 00 00 00	 call	 ?OnOK@COpenDlg@@AAEXPAUHWND__@@@Z ; COpenDlg::OnOK

; 78   :         break;

  00032	eb 1a		 jmp	 SHORT $LN6@OnCommand@4
$LN2@OnCommand@4:

; 79   :     case IDCANCEL:
; 80   :         EndDialog(hDlg, IDCANCEL);

  00034	6a 02		 push	 2
  00036	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00039	52		 push	 edx
  0003a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EndDialog@8

; 81   :         break;

  00040	eb 0c		 jmp	 SHORT $LN6@OnCommand@4
$LN1@OnCommand@4:

; 82   :     case IDC_OPEN_BROWSE:
; 83   :         OnBrowse(hDlg);

  00042	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00045	50		 push	 eax
  00046	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00049	e8 00 00 00 00	 call	 ?OnBrowse@COpenDlg@@AAEXPAUHWND__@@@Z ; COpenDlg::OnBrowse
$LN6@OnCommand@4:

; 84   :         break;
; 85   :     }
; 86   : }

  0004e	8b e5		 mov	 esp, ebp
  00050	5d		 pop	 ebp
  00051	c2 10 00	 ret	 16			; 00000010H
?OnCommand@COpenDlg@@AAEXPAUHWND__@@H0I@Z ENDP		; COpenDlg::OnCommand
_TEXT	ENDS
PUBLIC	?OnInitDialog@COpenDlg@@AAEHPAUHWND__@@0J@Z	; COpenDlg::OnInitDialog
; Function compile flags: /Odtp
;	COMDAT ?OnInitDialog@COpenDlg@@AAEHPAUHWND__@@0J@Z
_TEXT	SEGMENT
_this$ = -12						; size = 4
_pSHAC$ = -8						; size = 4
_hr$ = -4						; size = 4
_hwnd$ = 8						; size = 4
_hwndFocus$ = 12					; size = 4
_lParam$ = 16						; size = 4
?OnInitDialog@COpenDlg@@AAEHPAUHWND__@@0J@Z PROC	; COpenDlg::OnInitDialog, COMDAT
; _this$ = ecx

; 55   : {

  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

; 56   :     // setup auto complete
; 57   :     DynamicFunctionS2<HRESULT, HWND, DWORD> pSHAC(_T("SHLWAPI.DLL"), "SHAutoComplete");

  00009	68 00 00 00 00	 push	 OFFSET ??_C@_0P@GDBCDEPA@SHAutoComplete?$AA@
  0000e	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@OCJIFECI@?$AAS?$AAH?$AAL?$AAW?$AAA?$AAP?$AAI?$AA?4?$AAD?$AAL?$AAL?$AA?$AA@
  00013	8d 4d f8	 lea	 ecx, DWORD PTR _pSHAC$[ebp]
  00016	e8 00 00 00 00	 call	 ??0?$DynamicFunctionS2@JPAUHWND__@@K@@QAE@PB_WPBD@Z ; DynamicFunctionS2<long,HWND__ *,unsigned long>::DynamicFunctionS2<long,HWND__ *,unsigned long>

; 58   :     HRESULT hr;
; 59   :     if(pSHAC)

  0001b	8d 4d f8	 lea	 ecx, DWORD PTR _pSHAC$[ebp]
  0001e	e8 00 00 00 00	 call	 ??B?$DynamicFunctionParent@P6GJPAUHWND__@@K@Z@@QBEHXZ ; DynamicFunctionParent<long (__stdcall*)(HWND__ *,unsigned long)>::operator int
  00023	85 c0		 test	 eax, eax
  00025	74 1d		 je	 SHORT $LN1@OnInitDial@4

; 60   :     {
; 61   :         //this only work in single threaded apartments
; 62   :         //(same problem as with the file open dialogs)
; 63   :         hr = pSHAC(GetDlgItem(hwnd, IDC_OPEN_FILE), SHACF_URLALL|SHACF_FILESYS_ONLY);

  00027	6a 16		 push	 22			; 00000016H
  00029	68 f3 05 00 00	 push	 1523			; 000005f3H
  0002e	8b 45 08	 mov	 eax, DWORD PTR _hwnd$[ebp]
  00031	50		 push	 eax
  00032	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00038	50		 push	 eax
  00039	8d 4d f8	 lea	 ecx, DWORD PTR _pSHAC$[ebp]
  0003c	e8 00 00 00 00	 call	 ??R?$DynamicFunctionS2@JPAUHWND__@@K@@QBEJPAUHWND__@@K@Z ; DynamicFunctionS2<long,HWND__ *,unsigned long>::operator()
  00041	89 45 fc	 mov	 DWORD PTR _hr$[ebp], eax
$LN1@OnInitDial@4:

; 64   :         _ASSERTE(SUCCEEDED(hr));
; 65   :     }
; 66   : 
; 67   :     // return TRUE unless you set the focus to a control
; 68   :     // EXCEPTION: OCX Property Pages should return FALSE
; 69   :     return TRUE;

  00044	b8 01 00 00 00	 mov	 eax, 1

; 70   : }

  00049	8b e5		 mov	 esp, ebp
  0004b	5d		 pop	 ebp
  0004c	c2 0c 00	 ret	 12			; 0000000cH
?OnInitDialog@COpenDlg@@AAEHPAUHWND__@@0J@Z ENDP	; COpenDlg::OnInitDialog
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?DialogProc@COpenDlg@@EAEHPAUHWND__@@IIJ@Z
_TEXT	SEGMENT
tv64 = -8						; size = 4
_this$ = -4						; size = 4
_hDlg$ = 8						; size = 4
_message$ = 12						; size = 4
_wParam$ = 16						; size = 4
_lParam$ = 20						; size = 4
?DialogProc@COpenDlg@@EAEHPAUHWND__@@IIJ@Z PROC		; COpenDlg::DialogProc, COMDAT
; _this$ = ecx

; 40   : {

  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

; 41   :     switch(message)

  00009	8b 45 0c	 mov	 eax, DWORD PTR _message$[ebp]
  0000c	89 45 f8	 mov	 DWORD PTR tv64[ebp], eax
  0000f	81 7d f8 10 01
	00 00		 cmp	 DWORD PTR tv64[ebp], 272 ; 00000110H
  00016	74 0b		 je	 SHORT $LN3@DialogProc@2
  00018	81 7d f8 11 01
	00 00		 cmp	 DWORD PTR tv64[ebp], 273 ; 00000111H
  0001f	74 18		 je	 SHORT $LN2@DialogProc@2
  00021	eb 47		 jmp	 SHORT $LN1@DialogProc@2
$LN3@DialogProc@2:

; 42   :     {
; 43   :         HANDLE_MSG(hDlg, WM_INITDIALOG, OnInitDialog);

  00023	8b 4d 14	 mov	 ecx, DWORD PTR _lParam$[ebp]
  00026	51		 push	 ecx
  00027	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  0002a	52		 push	 edx
  0002b	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0002e	50		 push	 eax
  0002f	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00032	e8 00 00 00 00	 call	 ?OnInitDialog@COpenDlg@@AAEHPAUHWND__@@0J@Z ; COpenDlg::OnInitDialog
  00037	eb 33		 jmp	 SHORT $LN6@DialogProc@2
$LN2@DialogProc@2:

; 44   :         HANDLE_MSG(hDlg, WM_COMMAND, OnCommand);

  00039	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  0003c	c1 e9 10	 shr	 ecx, 16			; 00000010H
  0003f	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  00045	0f b7 d1	 movzx	 edx, cx
  00048	52		 push	 edx
  00049	8b 45 14	 mov	 eax, DWORD PTR _lParam$[ebp]
  0004c	50		 push	 eax
  0004d	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  00050	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  00056	0f b7 d1	 movzx	 edx, cx
  00059	52		 push	 edx
  0005a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0005d	50		 push	 eax
  0005e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00061	e8 00 00 00 00	 call	 ?OnCommand@COpenDlg@@AAEXPAUHWND__@@H0I@Z ; COpenDlg::OnCommand
  00066	33 c0		 xor	 eax, eax
  00068	eb 02		 jmp	 SHORT $LN6@DialogProc@2
$LN1@DialogProc@2:

; 45   :     default:
; 46   :         return FALSE;

  0006a	33 c0		 xor	 eax, eax
$LN6@DialogProc@2:

; 47   :     }
; 48   : }

  0006c	8b e5		 mov	 esp, ebp
  0006e	5d		 pop	 ebp
  0006f	c2 10 00	 ret	 16			; 00000010H
?DialogProc@COpenDlg@@EAEHPAUHWND__@@IIJ@Z ENDP		; COpenDlg::DialogProc
END
