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

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

INCLUDELIB OLDNAMES

PUBLIC	??_C@_0P@GHFPNOJB@bad?5allocation?$AA@		; `string'
PUBLIC	??_C@_1BA@KFOBIOMM@?$AAT?$AAY?$AAP?$AAE?$AAL?$AAI?$AAB?$AA?$AA@ ; `string'
PUBLIC	??_C@_1O@JDLOHAN@?$AAD?$AAe?$AAl?$AAe?$AAt?$AAe?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BC@GCKHIPE@?$AAN?$AAo?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BI@JFAIJMHL@?$AAF?$AAo?$AAr?$AAc?$AAe?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@ ; `string'
PUBLIC	??_C@_17LLMMEOJD@?$AAV?$AAa?$AAl?$AA?$AA@	; `string'
PUBLIC	??_C@_13OPKGLAFF@?$AAB?$AA?$AA@			; `string'
PUBLIC	??_C@_13MKMNOPIJ@?$AAD?$AA?$AA@			; `string'
PUBLIC	??_C@_13HADIAKP@?$AAS?$AA?$AA@			; `string'
PUBLIC	??B?$DynamicFunctionParent@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QBEHXZ ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::operator int
PUBLIC	??R?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QBEHPBUtagRAWINPUTDEVICE@@II@Z ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::operator()
PUBLIC	??B?$DynamicFunctionParent@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QBEHXZ ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::operator int
PUBLIC	??R?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QBEIPAUHRAWINPUT__@@IPAXPAII@Z ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::operator()
PUBLIC	??R?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QBEJPAPAUtagRAWINPUT@@HI@Z ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::operator()
PUBLIC	??0?$DynamicFunctionParent@P6GJPAPAUtagRAWINPUT@@HI@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>::DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>
PUBLIC	??0?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QAE@PB_WPBD@Z ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>
PUBLIC	??0?$DynamicFunctionParent@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>
PUBLIC	??0?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QAE@PB_WPBD@Z ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>
PUBLIC	??0?$DynamicFunctionParent@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>
PUBLIC	??0?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QAE@PB_WPBD@Z ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>
PUBLIC	?_Atlosplatform@_ATL_SAFE_ALLOCA_IMPL@ATL@@3KA	; ATL::_ATL_SAFE_ALLOCA_IMPL::_Atlosplatform
PUBLIC	_LIBID_ATLLib
PUBLIC	_CLSID_Registrar
PUBLIC	_IID_IRegistrar
PUBLIC	_IID_IAxWinHostWindow
PUBLIC	_IID_IAxWinAmbientDispatch
PUBLIC	_IID_IInternalConnection
PUBLIC	_IID_IDocHostUIHandlerDispatch
PUBLIC	?_pModule@ATL@@3PAVCComModule@1@A		; ATL::_pModule
PUBLIC	?GUID_ATLVer30@ATL@@3U_GUID@@A			; ATL::GUID_ATLVer30
PUBLIC	?m_libid@CComModule@ATL@@2U_GUID@@A		; ATL::CComModule::m_libid
PUBLIC	?ATL_CREATE_OBJECT@CComApartment@ATL@@2IA	; ATL::CComApartment::ATL_CREATE_OBJECT
PUBLIC	??_C@_1M@KANJNLFF@?$AAC?$AAL?$AAS?$AAI?$AAD?$AA?$AA@ ; `string'
PUBLIC	?rgszNeverDelete@CRegParser@ATL@@1PAPB_WA	; ATL::CRegParser::rgszNeverDelete
PUBLIC	?cbNeverDelete@CRegParser@ATL@@1HB		; ATL::CRegParser::cbNeverDelete
PUBLIC	?MAX_VALUE@CRegParser@ATL@@1HB			; ATL::CRegParser::MAX_VALUE
PUBLIC	?MAX_TYPE@CRegParser@ATL@@1HB			; ATL::CRegParser::MAX_TYPE
PUBLIC	_IID_IAMFilterGraphCallback
PUBLIC	?collate@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::collate
PUBLIC	?ctype@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::ctype
PUBLIC	?monetary@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::monetary
PUBLIC	?numeric@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::numeric
PUBLIC	?time@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::time
PUBLIC	?messages@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::messages
PUBLIC	?all@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::all
PUBLIC	?none@?$_Locbase@H@std@@2HB			; std::_Locbase<int>::none
PUBLIC	?table_size@?$ctype@D@std@@2IB			; std::ctype<char>::table_size
PUBLIC	?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::skipws
PUBLIC	?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::unitbuf
PUBLIC	?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::uppercase
PUBLIC	?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::showbase
PUBLIC	?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::showpoint
PUBLIC	?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::showpos
PUBLIC	?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::left
PUBLIC	?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::right
PUBLIC	?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::internal
PUBLIC	?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::dec
PUBLIC	?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::oct
PUBLIC	?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::hex
PUBLIC	?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::scientific
PUBLIC	?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B		; std::_Iosb<int>::fixed
PUBLIC	?hexfloat@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::hexfloat
PUBLIC	?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::boolalpha
PUBLIC	?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::_Stdio
PUBLIC	?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::adjustfield
PUBLIC	?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::basefield
PUBLIC	?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B	; std::_Iosb<int>::floatfield
PUBLIC	?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::goodbit
PUBLIC	?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B		; std::_Iosb<int>::eofbit
PUBLIC	?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::failbit
PUBLIC	?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B		; std::_Iosb<int>::badbit
PUBLIC	?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B	; std::_Iosb<int>::_Hardfail
PUBLIC	?in@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::in
PUBLIC	?out@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::out
PUBLIC	?ate@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::ate
PUBLIC	?app@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::app
PUBLIC	?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B		; std::_Iosb<int>::trunc
PUBLIC	?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::_Nocreate
PUBLIC	?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::_Noreplace
PUBLIC	?binary@?$_Iosb@H@std@@2W4_Openmode@12@B	; std::_Iosb<int>::binary
PUBLIC	?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::beg
PUBLIC	?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::cur
PUBLIC	?end@?$_Iosb@H@std@@2W4_Seekdir@12@B		; std::_Iosb<int>::end
PUBLIC	?_EEM_DS@?$deque@UTEventInfo@CEventCollector@@V?$allocator@UTEventInfo@CEventCollector@@@std@@@std@@2HB ; std::deque<CEventCollector::TEventInfo,std::allocator<CEventCollector::TEventInfo> >::_EEM_DS
PUBLIC	??_C@_0BI@CBLKONJL@RegisterRawInputDevices?$AA@	; `string'
PUBLIC	??_C@_0BA@DKMLDLCM@GetRawInputData?$AA@		; `string'
PUBLIC	??_C@_0BA@GBFGJADP@DefRawInputProc?$AA@		; `string'
PUBLIC	??_C@_1BG@OMEGGINE@?$AAu?$AAs?$AAe?$AAr?$AA3?$AA2?$AA?0?$AAd?$AAl?$AAl?$AA?$AA@ ; `string'
;	COMDAT ?_Atlosplatform@_ATL_SAFE_ALLOCA_IMPL@ATL@@3KA
_BSS	SEGMENT
?_Atlosplatform@_ATL_SAFE_ALLOCA_IMPL@ATL@@3KA DD 01H DUP (?) ; ATL::_ATL_SAFE_ALLOCA_IMPL::_Atlosplatform
_BSS	ENDS
;	COMDAT ?_pModule@ATL@@3PAVCComModule@1@A
_BSS	SEGMENT
?_pModule@ATL@@3PAVCComModule@1@A DD 01H DUP (?)	; ATL::_pModule
_BSS	ENDS
;	COMDAT ?m_libid@CComModule@ATL@@2U_GUID@@A
_BSS	SEGMENT
?m_libid@CComModule@ATL@@2U_GUID@@A DB 010H DUP (?)	; ATL::CComModule::m_libid
_BSS	ENDS
;	COMDAT ?ATL_CREATE_OBJECT@CComApartment@ATL@@2IA
_BSS	SEGMENT
?ATL_CREATE_OBJECT@CComApartment@ATL@@2IA DD 01H DUP (?) ; ATL::CComApartment::ATL_CREATE_OBJECT
;	COMDAT ??_C@_1BG@OMEGGINE@?$AAu?$AAs?$AAe?$AAr?$AA3?$AA2?$AA?0?$AAd?$AAl?$AAl?$AA?$AA@
CONST	SEGMENT
??_C@_1BG@OMEGGINE@?$AAu?$AAs?$AAe?$AAr?$AA3?$AA2?$AA?0?$AAd?$AAl?$AAl?$AA?$AA@ DB 'u'
	DB	00H, 's', 00H, 'e', 00H, 'r', 00H, '3', 00H, '2', 00H, ',', 00H
	DB	'd', 00H, 'l', 00H, 'l', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@GBFGJADP@DefRawInputProc?$AA@
CONST	SEGMENT
??_C@_0BA@GBFGJADP@DefRawInputProc?$AA@ DB 'DefRawInputProc', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@DKMLDLCM@GetRawInputData?$AA@
CONST	SEGMENT
??_C@_0BA@DKMLDLCM@GetRawInputData?$AA@ DB 'GetRawInputData', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BI@CBLKONJL@RegisterRawInputDevices?$AA@
CONST	SEGMENT
??_C@_0BI@CBLKONJL@RegisterRawInputDevices?$AA@ DB 'RegisterRawInputDevic'
	DB	'es', 00H					; `string'
CONST	ENDS
;	COMDAT ?_EEM_DS@?$deque@UTEventInfo@CEventCollector@@V?$allocator@UTEventInfo@CEventCollector@@@std@@@std@@2HB
CONST	SEGMENT
?_EEM_DS@?$deque@UTEventInfo@CEventCollector@@V?$allocator@UTEventInfo@CEventCollector@@@std@@@std@@2HB DD 01H ; std::deque<CEventCollector::TEventInfo,std::allocator<CEventCollector::TEventInfo> >::_EEM_DS
CONST	ENDS
;	COMDAT ?end@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?end@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 02H		; std::_Iosb<int>::end
CONST	ENDS
;	COMDAT ?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?cur@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 01H		; std::_Iosb<int>::cur
CONST	ENDS
;	COMDAT ?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B
CONST	SEGMENT
?beg@?$_Iosb@H@std@@2W4_Seekdir@12@B DD 00H		; std::_Iosb<int>::beg
CONST	ENDS
;	COMDAT ?binary@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?binary@?$_Iosb@H@std@@2W4_Openmode@12@B DD 020H	; std::_Iosb<int>::binary
CONST	ENDS
;	COMDAT ?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Noreplace@?$_Iosb@H@std@@2W4_Openmode@12@B DD 080H	; std::_Iosb<int>::_Noreplace
CONST	ENDS
;	COMDAT ?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?_Nocreate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 040H	; std::_Iosb<int>::_Nocreate
CONST	ENDS
;	COMDAT ?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?trunc@?$_Iosb@H@std@@2W4_Openmode@12@B DD 010H		; std::_Iosb<int>::trunc
CONST	ENDS
;	COMDAT ?app@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?app@?$_Iosb@H@std@@2W4_Openmode@12@B DD 08H		; std::_Iosb<int>::app
CONST	ENDS
;	COMDAT ?ate@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?ate@?$_Iosb@H@std@@2W4_Openmode@12@B DD 04H		; std::_Iosb<int>::ate
CONST	ENDS
;	COMDAT ?out@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?out@?$_Iosb@H@std@@2W4_Openmode@12@B DD 02H		; std::_Iosb<int>::out
CONST	ENDS
;	COMDAT ?in@?$_Iosb@H@std@@2W4_Openmode@12@B
CONST	SEGMENT
?in@?$_Iosb@H@std@@2W4_Openmode@12@B DD 01H		; std::_Iosb<int>::in
CONST	ENDS
;	COMDAT ?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?_Hardfail@?$_Iosb@H@std@@2W4_Iostate@12@B DD 010H	; std::_Iosb<int>::_Hardfail
CONST	ENDS
;	COMDAT ?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?badbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 04H		; std::_Iosb<int>::badbit
CONST	ENDS
;	COMDAT ?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?failbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 02H		; std::_Iosb<int>::failbit
CONST	ENDS
;	COMDAT ?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?eofbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 01H		; std::_Iosb<int>::eofbit
CONST	ENDS
;	COMDAT ?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B
CONST	SEGMENT
?goodbit@?$_Iosb@H@std@@2W4_Iostate@12@B DD 00H		; std::_Iosb<int>::goodbit
CONST	ENDS
;	COMDAT ?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?floatfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 03000H	; std::_Iosb<int>::floatfield
CONST	ENDS
;	COMDAT ?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?basefield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0e00H	; std::_Iosb<int>::basefield
CONST	ENDS
;	COMDAT ?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?adjustfield@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01c0H	; std::_Iosb<int>::adjustfield
CONST	ENDS
;	COMDAT ?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?_Stdio@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 08000H	; std::_Iosb<int>::_Stdio
CONST	ENDS
;	COMDAT ?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?boolalpha@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 04000H	; std::_Iosb<int>::boolalpha
CONST	ENDS
;	COMDAT ?hexfloat@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?hexfloat@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 03000H	; std::_Iosb<int>::hexfloat
CONST	ENDS
;	COMDAT ?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?fixed@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 02000H	; std::_Iosb<int>::fixed
CONST	ENDS
;	COMDAT ?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?scientific@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01000H	; std::_Iosb<int>::scientific
CONST	ENDS
;	COMDAT ?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?hex@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0800H		; std::_Iosb<int>::hex
CONST	ENDS
;	COMDAT ?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?oct@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0400H		; std::_Iosb<int>::oct
CONST	ENDS
;	COMDAT ?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?dec@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0200H		; std::_Iosb<int>::dec
CONST	ENDS
;	COMDAT ?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?internal@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 0100H	; std::_Iosb<int>::internal
CONST	ENDS
;	COMDAT ?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?right@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 080H		; std::_Iosb<int>::right
CONST	ENDS
;	COMDAT ?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?left@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 040H		; std::_Iosb<int>::left
CONST	ENDS
;	COMDAT ?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showpos@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 020H	; std::_Iosb<int>::showpos
CONST	ENDS
;	COMDAT ?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showpoint@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 010H	; std::_Iosb<int>::showpoint
CONST	ENDS
;	COMDAT ?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?showbase@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 08H	; std::_Iosb<int>::showbase
CONST	ENDS
;	COMDAT ?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?uppercase@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 04H	; std::_Iosb<int>::uppercase
CONST	ENDS
;	COMDAT ?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?unitbuf@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 02H	; std::_Iosb<int>::unitbuf
CONST	ENDS
;	COMDAT ?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B
CONST	SEGMENT
?skipws@?$_Iosb@H@std@@2W4_Fmtflags@12@B DD 01H		; std::_Iosb<int>::skipws
CONST	ENDS
;	COMDAT ?table_size@?$ctype@D@std@@2IB
CONST	SEGMENT
?table_size@?$ctype@D@std@@2IB DD 0100H			; std::ctype<char>::table_size
CONST	ENDS
;	COMDAT ?none@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?none@?$_Locbase@H@std@@2HB DD 00H			; std::_Locbase<int>::none
CONST	ENDS
;	COMDAT ?all@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?all@?$_Locbase@H@std@@2HB DD 03fH			; std::_Locbase<int>::all
CONST	ENDS
;	COMDAT ?messages@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?messages@?$_Locbase@H@std@@2HB DD 020H			; std::_Locbase<int>::messages
CONST	ENDS
;	COMDAT ?time@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?time@?$_Locbase@H@std@@2HB DD 010H			; std::_Locbase<int>::time
CONST	ENDS
;	COMDAT ?numeric@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?numeric@?$_Locbase@H@std@@2HB DD 08H			; std::_Locbase<int>::numeric
CONST	ENDS
;	COMDAT ?monetary@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?monetary@?$_Locbase@H@std@@2HB DD 04H			; std::_Locbase<int>::monetary
CONST	ENDS
;	COMDAT ?ctype@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?ctype@?$_Locbase@H@std@@2HB DD 02H			; std::_Locbase<int>::ctype
CONST	ENDS
;	COMDAT ?collate@?$_Locbase@H@std@@2HB
CONST	SEGMENT
?collate@?$_Locbase@H@std@@2HB DD 01H			; std::_Locbase<int>::collate
CONST	ENDS
;	COMDAT ??_C@_0P@GHFPNOJB@bad?5allocation?$AA@
CONST	SEGMENT
??_C@_0P@GHFPNOJB@bad?5allocation?$AA@ DB 'bad allocation', 00H ; `string'
CONST	ENDS
;	COMDAT _IID_IAMFilterGraphCallback
CONST	SEGMENT
_IID_IAMFilterGraphCallback DD 056a868fdH
	DW	0ad4H
	DW	011ceH
	DB	0b0H
	DB	0a3H
	DB	00H
	DB	020H
	DB	0afH
	DB	0bH
	DB	0a7H
	DB	070H
CONST	ENDS
;	COMDAT ?MAX_TYPE@CRegParser@ATL@@1HB
CONST	SEGMENT
?MAX_TYPE@CRegParser@ATL@@1HB DD 01000H			; ATL::CRegParser::MAX_TYPE
CONST	ENDS
;	COMDAT ?MAX_VALUE@CRegParser@ATL@@1HB
CONST	SEGMENT
?MAX_VALUE@CRegParser@ATL@@1HB DD 01000H		; ATL::CRegParser::MAX_VALUE
CONST	ENDS
;	COMDAT ?cbNeverDelete@CRegParser@ATL@@1HB
CONST	SEGMENT
?cbNeverDelete@CRegParser@ATL@@1HB DD 02H		; ATL::CRegParser::cbNeverDelete
CONST	ENDS
;	COMDAT ?rgszNeverDelete@CRegParser@ATL@@1PAPB_WA
_DATA	SEGMENT
?rgszNeverDelete@CRegParser@ATL@@1PAPB_WA DD FLAT:??_C@_1M@KANJNLFF@?$AAC?$AAL?$AAS?$AAI?$AAD?$AA?$AA@ ; ATL::CRegParser::rgszNeverDelete
	DD	FLAT:??_C@_1BA@KFOBIOMM@?$AAT?$AAY?$AAP?$AAE?$AAL?$AAI?$AAB?$AA?$AA@
_DATA	ENDS
;	COMDAT ??_C@_1BA@KFOBIOMM@?$AAT?$AAY?$AAP?$AAE?$AAL?$AAI?$AAB?$AA?$AA@
CONST	SEGMENT
??_C@_1BA@KFOBIOMM@?$AAT?$AAY?$AAP?$AAE?$AAL?$AAI?$AAB?$AA?$AA@ DB 'T', 00H
	DB	'Y', 00H, 'P', 00H, 'E', 00H, 'L', 00H, 'I', 00H, 'B', 00H, 00H
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_1O@JDLOHAN@?$AAD?$AAe?$AAl?$AAe?$AAt?$AAe?$AA?$AA@
CONST	SEGMENT
??_C@_1O@JDLOHAN@?$AAD?$AAe?$AAl?$AAe?$AAt?$AAe?$AA?$AA@ DB 'D', 00H, 'e', 00H
	DB	'l', 00H, 'e', 00H, 't', 00H, 'e', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BC@GCKHIPE@?$AAN?$AAo?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@
CONST	SEGMENT
??_C@_1BC@GCKHIPE@?$AAN?$AAo?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@ DB 'N'
	DB	00H, 'o', 00H, 'R', 00H, 'e', 00H, 'm', 00H, 'o', 00H, 'v', 00H
	DB	'e', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1BI@JFAIJMHL@?$AAF?$AAo?$AAr?$AAc?$AAe?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@
CONST	SEGMENT
??_C@_1BI@JFAIJMHL@?$AAF?$AAo?$AAr?$AAc?$AAe?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@ DB 'F'
	DB	00H, 'o', 00H, 'r', 00H, 'c', 00H, 'e', 00H, 'R', 00H, 'e', 00H
	DB	'm', 00H, 'o', 00H, 'v', 00H, 'e', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_17LLMMEOJD@?$AAV?$AAa?$AAl?$AA?$AA@
CONST	SEGMENT
??_C@_17LLMMEOJD@?$AAV?$AAa?$AAl?$AA?$AA@ DB 'V', 00H, 'a', 00H, 'l', 00H
	DB	00H, 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_13OPKGLAFF@?$AAB?$AA?$AA@
CONST	SEGMENT
??_C@_13OPKGLAFF@?$AAB?$AA?$AA@ DB 'B', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_13MKMNOPIJ@?$AAD?$AA?$AA@
CONST	SEGMENT
??_C@_13MKMNOPIJ@?$AAD?$AA?$AA@ DB 'D', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_13HADIAKP@?$AAS?$AA?$AA@
CONST	SEGMENT
??_C@_13HADIAKP@?$AAS?$AA?$AA@ DB 'S', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1M@KANJNLFF@?$AAC?$AAL?$AAS?$AAI?$AAD?$AA?$AA@
CONST	SEGMENT
??_C@_1M@KANJNLFF@?$AAC?$AAL?$AAS?$AAI?$AAD?$AA?$AA@ DB 'C', 00H, 'L', 00H
	DB	'S', 00H, 'I', 00H, 'D', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ?GUID_ATLVer30@ATL@@3U_GUID@@A
_DATA	SEGMENT
?GUID_ATLVer30@ATL@@3U_GUID@@A DD 0b62f5910H		; ATL::GUID_ATLVer30
	DW	06528H
	DW	011d1H
	DB	096H
	DB	011H
	DB	00H
	DB	00H
	DB	0f8H
	DB	01eH
	DB	0dH
	DB	0dH
_DATA	ENDS
;	COMDAT _IID_IDocHostUIHandlerDispatch
CONST	SEGMENT
_IID_IDocHostUIHandlerDispatch DD 0425b5af0H
	DW	065f1H
	DW	011d1H
	DB	096H
	DB	011H
	DB	00H
	DB	00H
	DB	0f8H
	DB	01eH
	DB	0dH
	DB	0dH
CONST	ENDS
;	COMDAT _IID_IInternalConnection
CONST	SEGMENT
_IID_IInternalConnection DD 072ad0770H
	DW	06a9fH
	DW	011d1H
	DB	0bcH
	DB	0ecH
	DB	00H
	DB	060H
	DB	08H
	DB	08fH
	DB	044H
	DB	04eH
CONST	ENDS
;	COMDAT _IID_IAxWinAmbientDispatch
CONST	SEGMENT
_IID_IAxWinAmbientDispatch DD 0b6ea2051H
	DW	048aH
	DW	011d1H
	DB	082H
	DB	0b9H
	DB	00H
	DB	0c0H
	DB	04fH
	DB	0b9H
	DB	094H
	DB	02eH
CONST	ENDS
;	COMDAT _IID_IAxWinHostWindow
CONST	SEGMENT
_IID_IAxWinHostWindow DD 0b6ea2050H
	DW	048aH
	DW	011d1H
	DB	082H
	DB	0b9H
	DB	00H
	DB	0c0H
	DB	04fH
	DB	0b9H
	DB	094H
	DB	02eH
CONST	ENDS
;	COMDAT _IID_IRegistrar
CONST	SEGMENT
_IID_IRegistrar DD 044ec053bH
	DW	0400fH
	DW	011d0H
	DB	09dH
	DB	0cdH
	DB	00H
	DB	0a0H
	DB	0c9H
	DB	03H
	DB	091H
	DB	0d3H
CONST	ENDS
;	COMDAT _CLSID_Registrar
CONST	SEGMENT
_CLSID_Registrar DD 044ec053aH
	DW	0400fH
	DW	011d0H
	DB	09dH
	DB	0cdH
	DB	00H
	DB	0a0H
	DB	0c9H
	DB	03H
	DB	091H
	DB	0d3H
CONST	ENDS
;	COMDAT _LIBID_ATLLib
CONST	SEGMENT
_LIBID_ATLLib DD 044ec0535H
	DW	0400fH
	DW	011d0H
	DB	09dH
	DB	0cdH
	DB	00H
	DB	0a0H
	DB	0c9H
	DB	03H
	DB	091H
	DB	0d3H
_szStringVal DD	FLAT:??_C@_13HADIAKP@?$AAS?$AA?$AA@
_szDwordVal DD	FLAT:??_C@_13MKMNOPIJ@?$AAD?$AA?$AA@
_szBinaryVal DD	FLAT:??_C@_13OPKGLAFF@?$AAB?$AA?$AA@
_szValToken DD	FLAT:??_C@_17LLMMEOJD@?$AAV?$AAa?$AAl?$AA?$AA@
_szForceRemove DD FLAT:??_C@_1BI@JFAIJMHL@?$AAF?$AAo?$AAr?$AAc?$AAe?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@
_szNoRemove DD	FLAT:??_C@_1BC@GCKHIPE@?$AAN?$AAo?$AAR?$AAe?$AAm?$AAo?$AAv?$AAe?$AA?$AA@
_szDelete DD	FLAT:??_C@_1O@JDLOHAN@?$AAD?$AAe?$AAl?$AAe?$AAt?$AAe?$AA?$AA@
__bad_alloc_Message DD FLAT:??_C@_0P@GHFPNOJB@bad?5allocation?$AA@
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\dynamicfunction.h
;	COMDAT ??R?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QBEJPAPAUtagRAWINPUT@@HI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Param1$ = 8						; size = 4
_Param2$ = 12						; size = 4
_Param3$ = 16						; size = 4
??R?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QBEJPAPAUtagRAWINPUT@@HI@Z PROC ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::operator(), 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 m_pFunc(Param1, Param2, Param3);

  00007	8b 45 10	 mov	 eax, DWORD PTR _Param3$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 0c	 mov	 ecx, DWORD PTR _Param2$[ebp]
  0000e	51		 push	 ecx
  0000f	8b 55 08	 mov	 edx, DWORD PTR _Param1$[ebp]
  00012	52		 push	 edx
  00013	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00016	8b 08		 mov	 ecx, DWORD PTR [eax]
  00018	ff d1		 call	 ecx

; 124  :     }

  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 0c 00	 ret	 12			; 0000000cH
??R?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QBEJPAPAUtagRAWINPUT@@HI@Z ENDP ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::operator()
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??B?$DynamicFunctionParent@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QBEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??B?$DynamicFunctionParent@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QBEHXZ PROC ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::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@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QBEHXZ ENDP ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::operator int
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??R?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QBEIPAUHRAWINPUT__@@IPAXPAII@Z
_TEXT	SEGMENT
tv81 = -8						; size = 4
_this$ = -4						; size = 4
_Param1$ = 8						; size = 4
_Param2$ = 12						; size = 4
_Param3$ = 16						; size = 4
_Param4$ = 20						; size = 4
_Param5$ = 24						; size = 4
??R?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QBEIPAUHRAWINPUT__@@IPAXPAII@Z PROC ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::operator(), COMDAT
; _this$ = ecx

; 154  :     {

  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

; 155  :         return m_pFunc?m_pFunc(Param1, Param2, Param3, Param4, Param5):0;

  00009	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000c	83 38 00	 cmp	 DWORD PTR [eax], 0
  0000f	74 20		 je	 SHORT $LN3@operator@6
  00011	8b 4d 18	 mov	 ecx, DWORD PTR _Param5$[ebp]
  00014	51		 push	 ecx
  00015	8b 55 14	 mov	 edx, DWORD PTR _Param4$[ebp]
  00018	52		 push	 edx
  00019	8b 45 10	 mov	 eax, DWORD PTR _Param3$[ebp]
  0001c	50		 push	 eax
  0001d	8b 4d 0c	 mov	 ecx, DWORD PTR _Param2$[ebp]
  00020	51		 push	 ecx
  00021	8b 55 08	 mov	 edx, DWORD PTR _Param1$[ebp]
  00024	52		 push	 edx
  00025	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00028	8b 08		 mov	 ecx, DWORD PTR [eax]
  0002a	ff d1		 call	 ecx
  0002c	89 45 f8	 mov	 DWORD PTR tv81[ebp], eax
  0002f	eb 07		 jmp	 SHORT $LN4@operator@6
$LN3@operator@6:
  00031	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR tv81[ebp], 0
$LN4@operator@6:
  00038	8b 45 f8	 mov	 eax, DWORD PTR tv81[ebp]

; 156  :     }

  0003b	8b e5		 mov	 esp, ebp
  0003d	5d		 pop	 ebp
  0003e	c2 14 00	 ret	 20			; 00000014H
??R?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QBEIPAUHRAWINPUT__@@IPAXPAII@Z ENDP ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::operator()
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??B?$DynamicFunctionParent@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QBEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
??B?$DynamicFunctionParent@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QBEHXZ PROC ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::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@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QBEHXZ ENDP ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::operator int
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??R?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QBEHPBUtagRAWINPUTDEVICE@@II@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Param1$ = 8						; size = 4
_Param2$ = 12						; size = 4
_Param3$ = 16						; size = 4
??R?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QBEHPBUtagRAWINPUTDEVICE@@II@Z PROC ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::operator(), 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 m_pFunc(Param1, Param2, Param3);

  00007	8b 45 10	 mov	 eax, DWORD PTR _Param3$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d 0c	 mov	 ecx, DWORD PTR _Param2$[ebp]
  0000e	51		 push	 ecx
  0000f	8b 55 08	 mov	 edx, DWORD PTR _Param1$[ebp]
  00012	52		 push	 edx
  00013	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00016	8b 08		 mov	 ecx, DWORD PTR [eax]
  00018	ff d1		 call	 ecx

; 124  :     }

  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 0c 00	 ret	 12			; 0000000cH
??R?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QBEHPBUtagRAWINPUTDEVICE@@II@Z ENDP ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::operator()
_TEXT	ENDS
PUBLIC	?OnInput@@YAJPAUHWND__@@IJ@Z			; OnInput
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\remoteinput.cpp
;	COMDAT ?OnInput@@YAJPAUHWND__@@IJ@Z
_TEXT	SEGMENT
tv136 = -28						; size = 4
$T294271 = -24						; size = 4
$T294270 = -20						; size = 4
_raw$146168 = -16					; size = 4
_bHandled$146157 = -12					; size = 4
_lpb$146161 = -8					; size = 4
_dwSize$146156 = -4					; size = 4
_hWnd$ = 8						; size = 4
_wParam$ = 12						; size = 4
_lParam$ = 16						; size = 4
?OnInput@@YAJPAUHWND__@@IJ@Z PROC			; OnInput, COMDAT

; 101  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 1c	 sub	 esp, 28			; 0000001cH

; 102  :     if(GET_RAWINPUT_CODE_WPARAM(wParam) == RIM_INPUT)

  00006	8b 45 0c	 mov	 eax, DWORD PTR _wParam$[ebp]
  00009	25 ff 00 00 00	 and	 eax, 255		; 000000ffH
  0000e	0f 85 cb 01 00
	00		 jne	 $LN19@OnInput

; 103  :     {
; 104  :         UINT dwSize;
; 105  :         BOOL bHandled = FALSE;

  00014	c7 45 f4 00 00
	00 00		 mov	 DWORD PTR _bHandled$146157[ebp], 0

; 106  : 
; 107  :         lpGetRawInputData((HRAWINPUT)lParam, RID_INPUT, NULL, &dwSize, sizeof(RAWINPUTHEADER));

  0001b	6a 10		 push	 16			; 00000010H
  0001d	8d 4d fc	 lea	 ecx, DWORD PTR _dwSize$146156[ebp]
  00020	51		 push	 ecx
  00021	6a 00		 push	 0
  00023	68 03 00 00 10	 push	 268435459		; 10000003H
  00028	8b 55 10	 mov	 edx, DWORD PTR _lParam$[ebp]
  0002b	52		 push	 edx
  0002c	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpGetRawInputData@@3V?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@A ; lpGetRawInputData
  00031	e8 00 00 00 00	 call	 ??R?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QBEIPAUHRAWINPUT__@@IPAXPAII@Z ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::operator()

; 108  :         LPBYTE lpb = new BYTE[dwSize];

  00036	8b 45 fc	 mov	 eax, DWORD PTR _dwSize$146156[ebp]
  00039	50		 push	 eax
  0003a	e8 00 00 00 00	 call	 ??_U@YAPAXI@Z		; operator new[]
  0003f	83 c4 04	 add	 esp, 4
  00042	89 45 ec	 mov	 DWORD PTR $T294270[ebp], eax
  00045	8b 4d ec	 mov	 ecx, DWORD PTR $T294270[ebp]
  00048	89 4d f8	 mov	 DWORD PTR _lpb$146161[ebp], ecx

; 109  : 
; 110  :         if (lpb != NULL)

  0004b	83 7d f8 00	 cmp	 DWORD PTR _lpb$146161[ebp], 0
  0004f	0f 84 75 01 00
	00		 je	 $LN18@OnInput

; 111  :         {
; 112  :             if (lpGetRawInputData((HRAWINPUT)lParam, RID_INPUT, lpb, &dwSize, sizeof(RAWINPUTHEADER)) == dwSize )

  00055	6a 10		 push	 16			; 00000010H
  00057	8d 55 fc	 lea	 edx, DWORD PTR _dwSize$146156[ebp]
  0005a	52		 push	 edx
  0005b	8b 45 f8	 mov	 eax, DWORD PTR _lpb$146161[ebp]
  0005e	50		 push	 eax
  0005f	68 03 00 00 10	 push	 268435459		; 10000003H
  00064	8b 4d 10	 mov	 ecx, DWORD PTR _lParam$[ebp]
  00067	51		 push	 ecx
  00068	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpGetRawInputData@@3V?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@A ; lpGetRawInputData
  0006d	e8 00 00 00 00	 call	 ??R?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QBEIPAUHRAWINPUT__@@IPAXPAII@Z ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::operator()
  00072	3b 45 fc	 cmp	 eax, DWORD PTR _dwSize$146156[ebp]
  00075	0f 85 3d 01 00
	00		 jne	 $LN17@OnInput

; 113  :             {
; 114  :                 RAWINPUT* raw = (RAWINPUT*)lpb;

  0007b	8b 55 f8	 mov	 edx, DWORD PTR _lpb$146161[ebp]
  0007e	89 55 f0	 mov	 DWORD PTR _raw$146168[ebp], edx

; 115  : 
; 116  :                 if (raw->header.dwType == RIM_TYPEHID && bHandleMediaKeys)

  00081	8b 45 f0	 mov	 eax, DWORD PTR _raw$146168[ebp]
  00084	83 38 02	 cmp	 DWORD PTR [eax], 2
  00087	0f 85 13 01 00
	00		 jne	 $LN16@OnInput
  0008d	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?bHandleMediaKeys@@3HA, 0 ; bHandleMediaKeys
  00094	0f 84 06 01 00
	00		 je	 $LN16@OnInput

; 117  :                 {
; 118  :                     if(raw->data.hid.dwSizeHid == 2 && raw->data.hid.dwCount == 1)

  0009a	8b 4d f0	 mov	 ecx, DWORD PTR _raw$146168[ebp]
  0009d	83 79 10 02	 cmp	 DWORD PTR [ecx+16], 2
  000a1	0f 85 f9 00 00
	00		 jne	 $LN16@OnInput
  000a7	8b 55 f0	 mov	 edx, DWORD PTR _raw$146168[ebp]
  000aa	83 7a 14 01	 cmp	 DWORD PTR [edx+20], 1
  000ae	0f 85 ec 00 00
	00		 jne	 $LN16@OnInput

; 119  :                     {
; 120  :                         if(raw->data.hid.bRawData[0] == 3)

  000b4	8b 45 f0	 mov	 eax, DWORD PTR _raw$146168[ebp]
  000b7	0f b6 48 18	 movzx	 ecx, BYTE PTR [eax+24]
  000bb	83 f9 03	 cmp	 ecx, 3
  000be	0f 85 dc 00 00
	00		 jne	 $LN16@OnInput

; 121  :                         {
; 122  :                             switch(raw->data.hid.bRawData[1])

  000c4	8b 55 f0	 mov	 edx, DWORD PTR _raw$146168[ebp]
  000c7	0f b6 42 19	 movzx	 eax, BYTE PTR [edx+25]
  000cb	89 45 e4	 mov	 DWORD PTR tv136[ebp], eax
  000ce	8b 4d e4	 mov	 ecx, DWORD PTR tv136[ebp]
  000d1	83 e9 0d	 sub	 ecx, 13			; 0000000dH
  000d4	89 4d e4	 mov	 DWORD PTR tv136[ebp], ecx
  000d7	83 7d e4 51	 cmp	 DWORD PTR tv136[ebp], 81 ; 00000051H
  000db	0f 87 bf 00 00
	00		 ja	 $LN16@OnInput
  000e1	8b 55 e4	 mov	 edx, DWORD PTR tv136[ebp]
  000e4	0f b6 82 00 00
	00 00		 movzx	 eax, BYTE PTR $LN22@OnInput[edx]
  000eb	ff 24 85 00 00
	00 00		 jmp	 DWORD PTR $LN23@OnInput[eax*4]
$LN11@OnInput:

; 123  :                             {
; 124  :                             case 13:
; 125  :                                 // ehome (green button)
; 126  :                                 // just exit if the user want to get
; 127  :                                 // the media center home page
; 128  :                                 // (or any of the other TV ones)
; 129  :                                 PostMessage(hWnd, WM_CLOSE, 0, 0);

  000f2	6a 00		 push	 0
  000f4	6a 00		 push	 0
  000f6	6a 10		 push	 16			; 00000010H
  000f8	8b 4d 08	 mov	 ecx, DWORD PTR _hWnd$[ebp]
  000fb	51		 push	 ecx
  000fc	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 130  :                                 break;

  00102	e9 99 00 00 00	 jmp	 $LN16@OnInput
$LN10@OnInput:

; 131  :                             case 90:
; 132  :                                 // teletext
; 133  :                                 PostMessage(hWnd, WM_COMMAND, IDM_CALL_VIDEOTEXT, 0);

  00107	6a 00		 push	 0
  00109	68 f5 00 00 00	 push	 245			; 000000f5H
  0010e	68 11 01 00 00	 push	 273			; 00000111H
  00113	8b 55 08	 mov	 edx, DWORD PTR _hWnd$[ebp]
  00116	52		 push	 edx
  00117	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 134  :                                 bHandled = TRUE;

  0011d	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR _bHandled$146157[ebp], 1

; 135  :                                 break;

  00124	eb 7a		 jmp	 SHORT $LN16@OnInput
$LN9@OnInput:

; 136  :                             case 91:
; 137  :                                 //red
; 138  :                                 PostMessage(hWnd, WM_COMMAND, IDM_TELETEXT_KEY1, 0);

  00126	6a 00		 push	 0
  00128	68 19 08 00 00	 push	 2073			; 00000819H
  0012d	68 11 01 00 00	 push	 273			; 00000111H
  00132	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  00135	50		 push	 eax
  00136	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 139  :                                 bHandled = TRUE;

  0013c	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR _bHandled$146157[ebp], 1

; 140  :                                 break;

  00143	eb 5b		 jmp	 SHORT $LN16@OnInput
$LN8@OnInput:

; 141  :                             case 92:
; 142  :                                 // green
; 143  :                                 PostMessage(hWnd, WM_COMMAND, IDM_TELETEXT_KEY2, 0);

  00145	6a 00		 push	 0
  00147	68 1a 08 00 00	 push	 2074			; 0000081aH
  0014c	68 11 01 00 00	 push	 273			; 00000111H
  00151	8b 4d 08	 mov	 ecx, DWORD PTR _hWnd$[ebp]
  00154	51		 push	 ecx
  00155	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 144  :                                 bHandled = TRUE;

  0015b	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR _bHandled$146157[ebp], 1

; 145  :                                 break;

  00162	eb 3c		 jmp	 SHORT $LN16@OnInput
$LN7@OnInput:

; 146  :                             case 93:
; 147  :                                 // yellow
; 148  :                                 PostMessage(hWnd, WM_COMMAND, IDM_TELETEXT_KEY3, 0);

  00164	6a 00		 push	 0
  00166	68 1b 08 00 00	 push	 2075			; 0000081bH
  0016b	68 11 01 00 00	 push	 273			; 00000111H
  00170	8b 55 08	 mov	 edx, DWORD PTR _hWnd$[ebp]
  00173	52		 push	 edx
  00174	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 149  :                                 bHandled = TRUE;

  0017a	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR _bHandled$146157[ebp], 1

; 150  :                                 break;

  00181	eb 1d		 jmp	 SHORT $LN16@OnInput
$LN6@OnInput:

; 151  :                             case 94:
; 152  :                                 // blue
; 153  :                                 PostMessage(hWnd, WM_COMMAND, IDM_TELETEXT_KEY4, 0);

  00183	6a 00		 push	 0
  00185	68 1c 08 00 00	 push	 2076			; 0000081cH
  0018a	68 11 01 00 00	 push	 273			; 00000111H
  0018f	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  00192	50		 push	 eax
  00193	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 154  :                                 bHandled = TRUE;

  00199	c7 45 f4 01 00
	00 00		 mov	 DWORD PTR _bHandled$146157[ebp], 1
$LN16@OnInput:

; 155  :                                 break;
; 156  :                             default:
; 157  :                                 break;
; 158  :                             }
; 159  :                         }
; 160  :                     }
; 161  :                 }
; 162  :                 if(!bHandled)

  001a0	83 7d f4 00	 cmp	 DWORD PTR _bHandled$146157[ebp], 0
  001a4	75 12		 jne	 SHORT $LN17@OnInput

; 163  :                 {
; 164  :                     lpDefRawInputProc(&raw, 1, sizeof(RAWINPUTHEADER));

  001a6	6a 10		 push	 16			; 00000010H
  001a8	6a 01		 push	 1
  001aa	8d 4d f0	 lea	 ecx, DWORD PTR _raw$146168[ebp]
  001ad	51		 push	 ecx
  001ae	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpDefRawInputProc@@3V?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@A ; lpDefRawInputProc
  001b3	e8 00 00 00 00	 call	 ??R?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QBEJPAPAUtagRAWINPUT@@HI@Z ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::operator()
$LN17@OnInput:

; 165  :                 }
; 166  :             }
; 167  : 
; 168  :             delete[] lpb;

  001b8	8b 55 f8	 mov	 edx, DWORD PTR _lpb$146161[ebp]
  001bb	89 55 e8	 mov	 DWORD PTR $T294271[ebp], edx
  001be	8b 45 e8	 mov	 eax, DWORD PTR $T294271[ebp]
  001c1	50		 push	 eax
  001c2	e8 00 00 00 00	 call	 ??_V@YAXPAX@Z		; operator delete[]
  001c7	83 c4 04	 add	 esp, 4
$LN18@OnInput:

; 169  :         }
; 170  : 
; 171  :         if(bHandled)

  001ca	83 7d f4 00	 cmp	 DWORD PTR _bHandled$146157[ebp], 0
  001ce	74 06		 je	 SHORT $LN3@OnInput

; 172  :         {
; 173  :             return FALSE;

  001d0	33 c0		 xor	 eax, eax
  001d2	eb 27		 jmp	 SHORT $LN20@OnInput

; 174  :         }
; 175  :         else

  001d4	eb 07		 jmp	 SHORT $LN2@OnInput
$LN3@OnInput:

; 176  :         {
; 177  :             return TRUE;

  001d6	b8 01 00 00 00	 mov	 eax, 1
  001db	eb 1e		 jmp	 SHORT $LN20@OnInput
$LN2@OnInput:

; 178  :         }
; 179  :     }
; 180  :     else

  001dd	eb 1c		 jmp	 SHORT $LN20@OnInput
$LN19@OnInput:

; 181  :     {
; 182  :         DefWindowProc(hWnd, WM_INPUT, wParam, lParam);

  001df	8b 4d 10	 mov	 ecx, DWORD PTR _lParam$[ebp]
  001e2	51		 push	 ecx
  001e3	8b 55 0c	 mov	 edx, DWORD PTR _wParam$[ebp]
  001e6	52		 push	 edx
  001e7	68 ff 00 00 00	 push	 255			; 000000ffH
  001ec	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  001ef	50		 push	 eax
  001f0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__DefWindowProcW@16

; 183  :         return TRUE;

  001f6	b8 01 00 00 00	 mov	 eax, 1
$LN20@OnInput:

; 184  :     }
; 185  : }

  001fb	8b e5		 mov	 esp, ebp
  001fd	5d		 pop	 ebp
  001fe	c3		 ret	 0
  001ff	90		 npad	 1
$LN23@OnInput:
  00200	00 00 00 00	 DD	 $LN11@OnInput
  00204	00 00 00 00	 DD	 $LN10@OnInput
  00208	00 00 00 00	 DD	 $LN9@OnInput
  0020c	00 00 00 00	 DD	 $LN8@OnInput
  00210	00 00 00 00	 DD	 $LN7@OnInput
  00214	00 00 00 00	 DD	 $LN6@OnInput
  00218	00 00 00 00	 DD	 $LN16@OnInput
$LN22@OnInput:
  0021c	00		 DB	 0
  0021d	06		 DB	 6
  0021e	06		 DB	 6
  0021f	06		 DB	 6
  00220	06		 DB	 6
  00221	06		 DB	 6
  00222	06		 DB	 6
  00223	06		 DB	 6
  00224	06		 DB	 6
  00225	06		 DB	 6
  00226	06		 DB	 6
  00227	06		 DB	 6
  00228	06		 DB	 6
  00229	06		 DB	 6
  0022a	06		 DB	 6
  0022b	06		 DB	 6
  0022c	06		 DB	 6
  0022d	06		 DB	 6
  0022e	06		 DB	 6
  0022f	06		 DB	 6
  00230	06		 DB	 6
  00231	06		 DB	 6
  00232	06		 DB	 6
  00233	06		 DB	 6
  00234	06		 DB	 6
  00235	06		 DB	 6
  00236	06		 DB	 6
  00237	06		 DB	 6
  00238	06		 DB	 6
  00239	06		 DB	 6
  0023a	06		 DB	 6
  0023b	06		 DB	 6
  0023c	06		 DB	 6
  0023d	06		 DB	 6
  0023e	06		 DB	 6
  0023f	06		 DB	 6
  00240	06		 DB	 6
  00241	06		 DB	 6
  00242	06		 DB	 6
  00243	06		 DB	 6
  00244	06		 DB	 6
  00245	06		 DB	 6
  00246	06		 DB	 6
  00247	06		 DB	 6
  00248	06		 DB	 6
  00249	06		 DB	 6
  0024a	06		 DB	 6
  0024b	06		 DB	 6
  0024c	06		 DB	 6
  0024d	06		 DB	 6
  0024e	06		 DB	 6
  0024f	06		 DB	 6
  00250	06		 DB	 6
  00251	06		 DB	 6
  00252	06		 DB	 6
  00253	06		 DB	 6
  00254	06		 DB	 6
  00255	06		 DB	 6
  00256	06		 DB	 6
  00257	06		 DB	 6
  00258	06		 DB	 6
  00259	06		 DB	 6
  0025a	06		 DB	 6
  0025b	06		 DB	 6
  0025c	06		 DB	 6
  0025d	06		 DB	 6
  0025e	06		 DB	 6
  0025f	06		 DB	 6
  00260	06		 DB	 6
  00261	06		 DB	 6
  00262	06		 DB	 6
  00263	06		 DB	 6
  00264	06		 DB	 6
  00265	06		 DB	 6
  00266	06		 DB	 6
  00267	06		 DB	 6
  00268	06		 DB	 6
  00269	01		 DB	 1
  0026a	02		 DB	 2
  0026b	03		 DB	 3
  0026c	04		 DB	 4
  0026d	05		 DB	 5
?OnInput@@YAJPAUHWND__@@IJ@Z ENDP			; OnInput
_TEXT	ENDS
PUBLIC	?OnAppCommand@@YAJPAUHWND__@@IJ@Z		; OnAppCommand
; Function compile flags: /Odtp
;	COMDAT ?OnAppCommand@@YAJPAUHWND__@@IJ@Z
_TEXT	SEGMENT
tv71 = -8						; size = 4
_RetVal$ = -4						; size = 4
_hWnd$ = 8						; size = 4
_wParam$ = 12						; size = 4
_lParam$ = 16						; size = 4
?OnAppCommand@@YAJPAUHWND__@@IJ@Z PROC			; OnAppCommand, COMDAT

; 68   : {

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

; 69   :     LONG RetVal = TRUE;

  00006	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR _RetVal$[ebp], 1

; 70   : 
; 71   :     switch(GET_APPCOMMAND_LPARAM(lParam))

  0000d	8b 45 10	 mov	 eax, DWORD PTR _lParam$[ebp]
  00010	c1 e8 10	 shr	 eax, 16			; 00000010H
  00013	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  00018	0f b7 c8	 movzx	 ecx, ax
  0001b	81 e1 ff 0f ff
	ff		 and	 ecx, -61441		; ffff0fffH
  00021	0f bf d1	 movsx	 edx, cx
  00024	89 55 f8	 mov	 DWORD PTR tv71[ebp], edx
  00027	8b 45 f8	 mov	 eax, DWORD PTR tv71[ebp]
  0002a	83 e8 01	 sub	 eax, 1
  0002d	89 45 f8	 mov	 DWORD PTR tv71[ebp], eax
  00030	83 7d f8 33	 cmp	 DWORD PTR tv71[ebp], 51	; 00000033H
  00034	0f 87 9b 00 00
	00		 ja	 $LN1@OnAppComma
  0003a	8b 4d f8	 mov	 ecx, DWORD PTR tv71[ebp]
  0003d	0f b6 91 00 00
	00 00		 movzx	 edx, BYTE PTR $LN12@OnAppComma[ecx]
  00044	ff 24 95 00 00
	00 00		 jmp	 DWORD PTR $LN13@OnAppComma[edx*4]
$LN7@OnAppComma:

; 72   :     {
; 73   :     case APPCOMMAND_BROWSER_BACKWARD:
; 74   :         PostMessage(hWnd, WM_CLOSE, 0, 0);

  0004b	6a 00		 push	 0
  0004d	6a 00		 push	 0
  0004f	6a 10		 push	 16			; 00000010H
  00051	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  00054	50		 push	 eax
  00055	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 75   :         break;

  0005b	eb 7f		 jmp	 SHORT $LN8@OnAppComma
$LN6@OnAppComma:

; 76   :     case APPCOMMAND_MEDIA_CHANNEL_DOWN:
; 77   :         PostMessage(hWnd, WM_COMMAND, IDM_CHANNELMINUS, 0);

  0005d	6a 00		 push	 0
  0005f	68 0b 01 00 00	 push	 267			; 0000010bH
  00064	68 11 01 00 00	 push	 273			; 00000111H
  00069	8b 4d 08	 mov	 ecx, DWORD PTR _hWnd$[ebp]
  0006c	51		 push	 ecx
  0006d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 78   :         break;

  00073	eb 67		 jmp	 SHORT $LN8@OnAppComma
$LN5@OnAppComma:

; 79   :     case APPCOMMAND_MEDIA_CHANNEL_UP:
; 80   :         PostMessage(hWnd, WM_COMMAND, IDM_CHANNELPLUS, 0);

  00075	6a 00		 push	 0
  00077	68 0a 01 00 00	 push	 266			; 0000010aH
  0007c	68 11 01 00 00	 push	 273			; 00000111H
  00081	8b 55 08	 mov	 edx, DWORD PTR _hWnd$[ebp]
  00084	52		 push	 edx
  00085	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 81   :         break;

  0008b	eb 4f		 jmp	 SHORT $LN8@OnAppComma
$LN4@OnAppComma:

; 82   :     case APPCOMMAND_MEDIA_NEXTTRACK:
; 83   :         PostMessage(hWnd, WM_COMMAND, IDM_PLAYLIST_NEXT, 0);

  0008d	6a 00		 push	 0
  0008f	68 92 08 00 00	 push	 2194			; 00000892H
  00094	68 11 01 00 00	 push	 273			; 00000111H
  00099	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  0009c	50		 push	 eax
  0009d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 84   :         break;

  000a3	eb 37		 jmp	 SHORT $LN8@OnAppComma
$LN3@OnAppComma:

; 85   :     case APPCOMMAND_MEDIA_PREVIOUSTRACK:
; 86   :         PostMessage(hWnd, WM_COMMAND, IDM_PLAYLIST_PREVIOUS, 0);

  000a5	6a 00		 push	 0
  000a7	68 91 08 00 00	 push	 2193			; 00000891H
  000ac	68 11 01 00 00	 push	 273			; 00000111H
  000b1	8b 4d 08	 mov	 ecx, DWORD PTR _hWnd$[ebp]
  000b4	51		 push	 ecx
  000b5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 87   :         break;

  000bb	eb 1f		 jmp	 SHORT $LN8@OnAppComma
$LN2@OnAppComma:

; 88   :     case APPCOMMAND_MEDIA_PLAY_PAUSE:
; 89   :         PostMessage(hWnd, WM_COMMAND, IDM_CAPTURE_PAUSE, 0);

  000bd	6a 00		 push	 0
  000bf	68 e8 00 00 00	 push	 232			; 000000e8H
  000c4	68 11 01 00 00	 push	 273			; 00000111H
  000c9	8b 55 08	 mov	 edx, DWORD PTR _hWnd$[ebp]
  000cc	52		 push	 edx
  000cd	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 90   :         break;

  000d3	eb 07		 jmp	 SHORT $LN8@OnAppComma
$LN1@OnAppComma:

; 91   :     default:
; 92   :         RetVal = FALSE;

  000d5	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _RetVal$[ebp], 0
$LN8@OnAppComma:

; 93   :         break;
; 94   :     }
; 95   :     return RetVal;

  000dc	8b 45 fc	 mov	 eax, DWORD PTR _RetVal$[ebp]

; 96   : }

  000df	8b e5		 mov	 esp, ebp
  000e1	5d		 pop	 ebp
  000e2	c3		 ret	 0
  000e3	90		 npad	 1
$LN13@OnAppComma:
  000e4	00 00 00 00	 DD	 $LN7@OnAppComma
  000e8	00 00 00 00	 DD	 $LN4@OnAppComma
  000ec	00 00 00 00	 DD	 $LN3@OnAppComma
  000f0	00 00 00 00	 DD	 $LN2@OnAppComma
  000f4	00 00 00 00	 DD	 $LN5@OnAppComma
  000f8	00 00 00 00	 DD	 $LN6@OnAppComma
  000fc	00 00 00 00	 DD	 $LN1@OnAppComma
$LN12@OnAppComma:
  00100	00		 DB	 0
  00101	06		 DB	 6
  00102	06		 DB	 6
  00103	06		 DB	 6
  00104	06		 DB	 6
  00105	06		 DB	 6
  00106	06		 DB	 6
  00107	06		 DB	 6
  00108	06		 DB	 6
  00109	06		 DB	 6
  0010a	01		 DB	 1
  0010b	02		 DB	 2
  0010c	06		 DB	 6
  0010d	03		 DB	 3
  0010e	06		 DB	 6
  0010f	06		 DB	 6
  00110	06		 DB	 6
  00111	06		 DB	 6
  00112	06		 DB	 6
  00113	06		 DB	 6
  00114	06		 DB	 6
  00115	06		 DB	 6
  00116	06		 DB	 6
  00117	06		 DB	 6
  00118	06		 DB	 6
  00119	06		 DB	 6
  0011a	06		 DB	 6
  0011b	06		 DB	 6
  0011c	06		 DB	 6
  0011d	06		 DB	 6
  0011e	06		 DB	 6
  0011f	06		 DB	 6
  00120	06		 DB	 6
  00121	06		 DB	 6
  00122	06		 DB	 6
  00123	06		 DB	 6
  00124	06		 DB	 6
  00125	06		 DB	 6
  00126	06		 DB	 6
  00127	06		 DB	 6
  00128	06		 DB	 6
  00129	06		 DB	 6
  0012a	06		 DB	 6
  0012b	06		 DB	 6
  0012c	06		 DB	 6
  0012d	06		 DB	 6
  0012e	06		 DB	 6
  0012f	06		 DB	 6
  00130	06		 DB	 6
  00131	06		 DB	 6
  00132	04		 DB	 4
  00133	05		 DB	 5
?OnAppCommand@@YAJPAUHWND__@@IJ@Z ENDP			; OnAppCommand
_TEXT	ENDS
PUBLIC	?OnAppCommandVolume@@YAJPAUHWND__@@IJ@Z		; OnAppCommandVolume
; Function compile flags: /Odtp
;	COMDAT ?OnAppCommandVolume@@YAJPAUHWND__@@IJ@Z
_TEXT	SEGMENT
tv71 = -8						; size = 4
_RetVal$ = -4						; size = 4
_hWnd$ = 8						; size = 4
_wParam$ = 12						; size = 4
_lParam$ = 16						; size = 4
?OnAppCommandVolume@@YAJPAUHWND__@@IJ@Z PROC		; OnAppCommandVolume, COMDAT

; 45   : {

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

; 46   :     LONG RetVal = TRUE;

  00006	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR _RetVal$[ebp], 1

; 47   : 
; 48   :     switch(GET_APPCOMMAND_LPARAM(lParam))

  0000d	8b 45 10	 mov	 eax, DWORD PTR _lParam$[ebp]
  00010	c1 e8 10	 shr	 eax, 16			; 00000010H
  00013	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  00018	0f b7 c8	 movzx	 ecx, ax
  0001b	81 e1 ff 0f ff
	ff		 and	 ecx, -61441		; ffff0fffH
  00021	0f bf d1	 movsx	 edx, cx
  00024	89 55 f8	 mov	 DWORD PTR tv71[ebp], edx
  00027	83 7d f8 08	 cmp	 DWORD PTR tv71[ebp], 8
  0002b	74 3e		 je	 SHORT $LN2@OnAppComma@2
  0002d	83 7d f8 09	 cmp	 DWORD PTR tv71[ebp], 9
  00031	74 08		 je	 SHORT $LN4@OnAppComma@2
  00033	83 7d f8 0a	 cmp	 DWORD PTR tv71[ebp], 10	; 0000000aH
  00037	74 1a		 je	 SHORT $LN3@OnAppComma@2
  00039	eb 48		 jmp	 SHORT $LN1@OnAppComma@2
$LN4@OnAppComma@2:

; 49   :     {
; 50   :     case APPCOMMAND_VOLUME_DOWN:
; 51   :         PostMessage(hWnd, WM_COMMAND, IDM_VOLUMEMINUS, 0);

  0003b	6a 00		 push	 0
  0003d	68 77 01 00 00	 push	 375			; 00000177H
  00042	68 11 01 00 00	 push	 273			; 00000111H
  00047	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  0004a	50		 push	 eax
  0004b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 52   :         break;

  00051	eb 37		 jmp	 SHORT $LN5@OnAppComma@2
$LN3@OnAppComma@2:

; 53   :     case APPCOMMAND_VOLUME_UP:
; 54   :         PostMessage(hWnd, WM_COMMAND, IDM_VOLUMEPLUS, 0);

  00053	6a 00		 push	 0
  00055	68 76 01 00 00	 push	 374			; 00000176H
  0005a	68 11 01 00 00	 push	 273			; 00000111H
  0005f	8b 4d 08	 mov	 ecx, DWORD PTR _hWnd$[ebp]
  00062	51		 push	 ecx
  00063	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 55   :         break;

  00069	eb 1f		 jmp	 SHORT $LN5@OnAppComma@2
$LN2@OnAppComma@2:

; 56   :     case APPCOMMAND_VOLUME_MUTE:
; 57   :         PostMessage(hWnd, WM_COMMAND, IDM_MUTE, 0);

  0006b	6a 00		 push	 0
  0006d	68 92 01 00 00	 push	 402			; 00000192H
  00072	68 11 01 00 00	 push	 273			; 00000111H
  00077	8b 55 08	 mov	 edx, DWORD PTR _hWnd$[ebp]
  0007a	52		 push	 edx
  0007b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 58   :         break;

  00081	eb 07		 jmp	 SHORT $LN5@OnAppComma@2
$LN1@OnAppComma@2:

; 59   :     default:
; 60   :         RetVal = FALSE;

  00083	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _RetVal$[ebp], 0
$LN5@OnAppComma@2:

; 61   :         break;
; 62   :     }
; 63   :     return RetVal;

  0008a	8b 45 fc	 mov	 eax, DWORD PTR _RetVal$[ebp]

; 64   : }

  0008d	8b e5		 mov	 esp, ebp
  0008f	5d		 pop	 ebp
  00090	c3		 ret	 0
?OnAppCommandVolume@@YAJPAUHWND__@@IJ@Z ENDP		; OnAppCommandVolume
_TEXT	ENDS
PUBLIC	?RemoteRegister@@YAXXZ				; RemoteRegister
; Function compile flags: /Odtp
;	COMDAT ?RemoteRegister@@YAXXZ
_TEXT	SEGMENT
_Rid$146111 = -12					; size = 12
?RemoteRegister@@YAXXZ PROC				; RemoteRegister, COMDAT

; 21   : {

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

; 22   : #ifdef WM_INPUT
; 23   :     // register for messages from MCE remote
; 24   :     // this will mean we will get sent WM_INPUT messages
; 25   :     if(lpRegisterRawInputDevices && lpGetRawInputData)

  00006	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpRegisterRawInputDevices@@3V?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@A ; lpRegisterRawInputDevices
  0000b	e8 00 00 00 00	 call	 ??B?$DynamicFunctionParent@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QBEHXZ ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::operator int
  00010	85 c0		 test	 eax, eax
  00012	74 40		 je	 SHORT $LN2@RemoteRegi
  00014	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpGetRawInputData@@3V?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@A ; lpGetRawInputData
  00019	e8 00 00 00 00	 call	 ??B?$DynamicFunctionParent@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QBEHXZ ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::operator int
  0001e	85 c0		 test	 eax, eax
  00020	74 32		 je	 SHORT $LN2@RemoteRegi

; 26   :     {
; 27   :         RAWINPUTDEVICE Rid[1];
; 28   : 
; 29   :         Rid[0].usUsagePage = 0xFFBC;

  00022	b8 bc ff 00 00	 mov	 eax, 65468		; 0000ffbcH
  00027	66 89 45 f4	 mov	 WORD PTR _Rid$146111[ebp], ax

; 30   :         Rid[0].usUsage = 0x88;

  0002b	b9 88 00 00 00	 mov	 ecx, 136		; 00000088H
  00030	66 89 4d f6	 mov	 WORD PTR _Rid$146111[ebp+2], cx

; 31   :         Rid[0].dwFlags = 0;

  00034	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR _Rid$146111[ebp+4], 0

; 32   :         Rid[0].hwndTarget = NULL;

  0003b	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _Rid$146111[ebp+8], 0

; 33   : 
; 34   :         lpRegisterRawInputDevices(Rid, 1, sizeof(Rid[0]));

  00042	6a 0c		 push	 12			; 0000000cH
  00044	6a 01		 push	 1
  00046	8d 55 f4	 lea	 edx, DWORD PTR _Rid$146111[ebp]
  00049	52		 push	 edx
  0004a	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpRegisterRawInputDevices@@3V?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@A ; lpRegisterRawInputDevices
  0004f	e8 00 00 00 00	 call	 ??R?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QBEHPBUtagRAWINPUTDEVICE@@II@Z ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::operator()
$LN2@RemoteRegi:

; 35   :     }
; 36   : #endif
; 37   : }

  00054	8b e5		 mov	 esp, ebp
  00056	5d		 pop	 ebp
  00057	c3		 ret	 0
?RemoteRegister@@YAXXZ ENDP				; RemoteRegister
PUBLIC	?Remote_HandleMsgs@@YAJPAUHWND__@@IIJPAH@Z	; Remote_HandleMsgs
; Function compile flags: /Odtp
;	COMDAT ?Remote_HandleMsgs@@YAJPAUHWND__@@IIJPAH@Z
_TEXT	SEGMENT
_hWnd$ = 8						; size = 4
_message$ = 12						; size = 4
_wParam$ = 16						; size = 4
_lParam$ = 20						; size = 4
_bDone$ = 24						; size = 4
?Remote_HandleMsgs@@YAJPAUHWND__@@IIJPAH@Z PROC		; Remote_HandleMsgs, COMDAT

; 190  : {

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

; 191  : #ifdef WM_INPUT
; 192  :     if(message == WM_INPUT)

  00003	81 7d 0c ff 00
	00 00		 cmp	 DWORD PTR _message$[ebp], 255 ; 000000ffH
  0000a	75 1f		 jne	 SHORT $LN5@Remote_Han

; 193  :     {
; 194  :         *bDone = TRUE;

  0000c	8b 45 18	 mov	 eax, DWORD PTR _bDone$[ebp]
  0000f	c7 00 01 00 00
	00		 mov	 DWORD PTR [eax], 1

; 195  :         return OnInput(hWnd, wParam, lParam);

  00015	8b 4d 14	 mov	 ecx, DWORD PTR _lParam$[ebp]
  00018	51		 push	 ecx
  00019	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  0001c	52		 push	 edx
  0001d	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  00020	50		 push	 eax
  00021	e8 00 00 00 00	 call	 ?OnInput@@YAJPAUHWND__@@IJ@Z ; OnInput
  00026	83 c4 0c	 add	 esp, 12			; 0000000cH
  00029	eb 6c		 jmp	 SHORT $LN6@Remote_Han
$LN5@Remote_Han:

; 196  :     }
; 197  : #endif
; 198  : #ifdef WM_APPCOMMAND
; 199  :     if(message == WM_APPCOMMAND)

  0002b	81 7d 0c 19 03
	00 00		 cmp	 DWORD PTR _message$[ebp], 793 ; 00000319H
  00032	75 61		 jne	 SHORT $LN4@Remote_Han

; 200  :     {
; 201  :         *bDone = TRUE;

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

; 202  :         if(OnAppCommandVolume(hWnd, wParam, lParam))

  0003d	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00040	52		 push	 edx
  00041	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  00044	50		 push	 eax
  00045	8b 4d 08	 mov	 ecx, DWORD PTR _hWnd$[ebp]
  00048	51		 push	 ecx
  00049	e8 00 00 00 00	 call	 ?OnAppCommandVolume@@YAJPAUHWND__@@IJ@Z ; OnAppCommandVolume
  0004e	83 c4 0c	 add	 esp, 12			; 0000000cH
  00051	85 c0		 test	 eax, eax
  00053	74 07		 je	 SHORT $LN3@Remote_Han

; 203  :         {
; 204  :             return TRUE;

  00055	b8 01 00 00 00	 mov	 eax, 1
  0005a	eb 3b		 jmp	 SHORT $LN6@Remote_Han
$LN3@Remote_Han:

; 205  :         }
; 206  :         if(bHandleMediaKeys)

  0005c	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?bHandleMediaKeys@@3HA, 0 ; bHandleMediaKeys
  00063	74 18		 je	 SHORT $LN2@Remote_Han

; 207  :         {
; 208  :             return OnAppCommand(hWnd, wParam, lParam);

  00065	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00068	52		 push	 edx
  00069	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  0006c	50		 push	 eax
  0006d	8b 4d 08	 mov	 ecx, DWORD PTR _hWnd$[ebp]
  00070	51		 push	 ecx
  00071	e8 00 00 00 00	 call	 ?OnAppCommand@@YAJPAUHWND__@@IJ@Z ; OnAppCommand
  00076	83 c4 0c	 add	 esp, 12			; 0000000cH
  00079	eb 1c		 jmp	 SHORT $LN6@Remote_Han

; 209  :         }
; 210  :         else

  0007b	eb 18		 jmp	 SHORT $LN4@Remote_Han
$LN2@Remote_Han:

; 211  :         {
; 212  :             return DefWindowProc(hWnd, message, wParam, lParam);

  0007d	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00080	52		 push	 edx
  00081	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  00084	50		 push	 eax
  00085	8b 4d 0c	 mov	 ecx, DWORD PTR _message$[ebp]
  00088	51		 push	 ecx
  00089	8b 55 08	 mov	 edx, DWORD PTR _hWnd$[ebp]
  0008c	52		 push	 edx
  0008d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__DefWindowProcW@16
  00093	eb 02		 jmp	 SHORT $LN6@Remote_Han
$LN4@Remote_Han:

; 213  :         }
; 214  :     }
; 215  : #endif
; 216  :     return 0;

  00095	33 c0		 xor	 eax, eax
$LN6@Remote_Han:

; 217  : }

  00097	5d		 pop	 ebp
  00098	c3		 ret	 0
?Remote_HandleMsgs@@YAJPAUHWND__@@IIJPAH@Z ENDP		; Remote_HandleMsgs
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\dynamicfunction.h
;	COMDAT ??0?$DynamicFunctionParent@P6GJPAPAUtagRAWINPUT@@HI@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@P6GJPAPAUtagRAWINPUT@@HI@Z@@QAE@PB_WPBD@Z PROC ; DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>::DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>, 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@8

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

; 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@P6GJPAPAUtagRAWINPUT@@HI@Z@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>::DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$DynamicFunctionParent@P6GIPAUHRAWINPUT__@@IPAXPAII@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@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QAE@PB_WPBD@Z PROC ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>, 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@9

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

; 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@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$DynamicFunctionParent@P6GHPBUtagRAWINPUTDEVICE@@II@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@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QAE@PB_WPBD@Z PROC ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>, 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@10

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

; 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@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QAE@PB_WPBD@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_LibraryName$ = 8					; size = 4
_FunctionName$ = 12					; size = 4
??0?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QAE@PB_WPBD@Z PROC ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>, COMDAT
; _this$ = ecx

; 118  :     {

  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@P6GJPAPAUtagRAWINPUT@@HI@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>::DynamicFunctionParent<long (__stdcall*)(tagRAWINPUT * *,int,unsigned int)>

; 119  :     }

  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?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QAE@PB_WPBD@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_LibraryName$ = 8					; size = 4
_FunctionName$ = 12					; size = 4
??0?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QAE@PB_WPBD@Z PROC ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>, COMDAT
; _this$ = ecx

; 150  :     {

  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@P6GIPAUHRAWINPUT__@@IPAXPAII@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>::DynamicFunctionParent<unsigned int (__stdcall*)(HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int)>

; 151  :     }

  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?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??0?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QAE@PB_WPBD@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_LibraryName$ = 8					; size = 4
_FunctionName$ = 12					; size = 4
??0?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QAE@PB_WPBD@Z PROC ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>, COMDAT
; _this$ = ecx

; 118  :     {

  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@P6GHPBUtagRAWINPUTDEVICE@@II@Z@@QAE@PB_WPBD@Z ; DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>::DynamicFunctionParent<int (__stdcall*)(tagRAWINPUTDEVICE const *,unsigned int,unsigned int)>

; 119  :     }

  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?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QAE@PB_WPBD@Z ENDP ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\remoteinput.cpp
;	COMDAT ??__ElpRegisterRawInputDevices@@YAXXZ
text$yc	SEGMENT
??__ElpRegisterRawInputDevices@@YAXXZ PROC		; `dynamic initializer for 'lpRegisterRawInputDevices'', COMDAT

; 13   : DynamicFunctionS3<BOOL, PCRAWINPUTDEVICE, UINT, UINT> lpRegisterRawInputDevices(_T("user32.dll"), "RegisterRawInputDevices");

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	68 00 00 00 00	 push	 OFFSET ??_C@_0BI@CBLKONJL@RegisterRawInputDevices?$AA@
  00008	68 00 00 00 00	 push	 OFFSET ??_C@_1BG@OILDLIOJ@?$AAu?$AAs?$AAe?$AAr?$AA3?$AA2?$AA?4?$AAd?$AAl?$AAl?$AA?$AA@
  0000d	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpRegisterRawInputDevices@@3V?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@A ; lpRegisterRawInputDevices
  00012	e8 00 00 00 00	 call	 ??0?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@QAE@PB_WPBD@Z ; DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>::DynamicFunctionS3<int,tagRAWINPUTDEVICE const *,unsigned int,unsigned int>
  00017	5d		 pop	 ebp
  00018	c3		 ret	 0
??__ElpRegisterRawInputDevices@@YAXXZ ENDP		; `dynamic initializer for 'lpRegisterRawInputDevices''
; Function compile flags: /Odtp
text$yc	ENDS
;	COMDAT ??__ElpGetRawInputData@@YAXXZ
text$yc	SEGMENT
??__ElpGetRawInputData@@YAXXZ PROC			; `dynamic initializer for 'lpGetRawInputData'', COMDAT

; 14   : DynamicFunctionS5<UINT, HRAWINPUT, UINT, LPVOID ,PUINT, UINT> lpGetRawInputData(_T("user32.dll"), "GetRawInputData");

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	68 00 00 00 00	 push	 OFFSET ??_C@_0BA@DKMLDLCM@GetRawInputData?$AA@
  00008	68 00 00 00 00	 push	 OFFSET ??_C@_1BG@OILDLIOJ@?$AAu?$AAs?$AAe?$AAr?$AA3?$AA2?$AA?4?$AAd?$AAl?$AAl?$AA?$AA@
  0000d	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpGetRawInputData@@3V?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@A ; lpGetRawInputData
  00012	e8 00 00 00 00	 call	 ??0?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@QAE@PB_WPBD@Z ; DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>::DynamicFunctionS5<unsigned int,HRAWINPUT__ *,unsigned int,void *,unsigned int *,unsigned int>
  00017	5d		 pop	 ebp
  00018	c3		 ret	 0
??__ElpGetRawInputData@@YAXXZ ENDP			; `dynamic initializer for 'lpGetRawInputData''
; Function compile flags: /Odtp
text$yc	ENDS
;	COMDAT ??__ElpDefRawInputProc@@YAXXZ
text$yc	SEGMENT
??__ElpDefRawInputProc@@YAXXZ PROC			; `dynamic initializer for 'lpDefRawInputProc'', COMDAT

; 15   : DynamicFunctionS3<LRESULT, PRAWINPUT* ,INT ,UINT> lpDefRawInputProc(_T("user32,dll"), "DefRawInputProc");

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	68 00 00 00 00	 push	 OFFSET ??_C@_0BA@GBFGJADP@DefRawInputProc?$AA@
  00008	68 00 00 00 00	 push	 OFFSET ??_C@_1BG@OMEGGINE@?$AAu?$AAs?$AAe?$AAr?$AA3?$AA2?$AA?0?$AAd?$AAl?$AAl?$AA?$AA@
  0000d	b9 00 00 00 00	 mov	 ecx, OFFSET ?lpDefRawInputProc@@3V?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@A ; lpDefRawInputProc
  00012	e8 00 00 00 00	 call	 ??0?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@QAE@PB_WPBD@Z ; DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>::DynamicFunctionS3<long,tagRAWINPUT * *,int,unsigned int>
  00017	5d		 pop	 ebp
  00018	c3		 ret	 0
??__ElpDefRawInputProc@@YAXXZ ENDP			; `dynamic initializer for 'lpDefRawInputProc''
PUBLIC	?lpGetRawInputData@@3V?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@A ; lpGetRawInputData
PUBLIC	?lpDefRawInputProc@@3V?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@A ; lpDefRawInputProc
PUBLIC	?lpRegisterRawInputDevices@@3V?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@A ; lpRegisterRawInputDevices
?lpGetRawInputData@@3V?$DynamicFunctionS5@IPAUHRAWINPUT__@@IPAXPAII@@A DD 01H DUP (?) ; lpGetRawInputData
?lpDefRawInputProc@@3V?$DynamicFunctionS3@JPAPAUtagRAWINPUT@@HI@@A DD 01H DUP (?) ; lpDefRawInputProc
?lpRegisterRawInputDevices@@3V?$DynamicFunctionS3@HPBUtagRAWINPUTDEVICE@@II@@A DD 01H DUP (?) ; lpRegisterRawInputDevices
_lpRegisterRawInputDevices$initializer$ DD FLAT:??__ElpRegisterRawInputDevices@@YAXXZ
_lpGetRawInputData$initializer$ DD FLAT:??__ElpGetRawInputData@@YAXXZ
_lpDefRawInputProc$initializer$ DD FLAT:??__ElpDefRawInputProc@@YAXXZ
END
