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

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

INCLUDELIB OLDNAMES

PUBLIC	??_C@_0BE@ILGDKIAN@PostSwitchMuteDelay?$AA@	; `string'
PUBLIC	??_C@_0BH@CFANGCHG@Post?5switch?5mute?5delay?$AA@ ; `string'
PUBLIC	??_C@_0BD@ICHMMOND@PreSwitchMuteDelay?$AA@	; `string'
PUBLIC	??_C@_0BG@BMLFLLJB@Pre?5switch?5mute?5delay?$AA@ ; `string'
PUBLIC	??_C@_0N@NEEAKNOG@ScanUsingAFC?$AA@		; `string'
PUBLIC	??_C@_0BH@GBDJCIMH@Use?5AFC?5While?5Scanning?$AA@ ; `string'
PUBLIC	??_C@_08IHAAJPHC@ScanMode?$AA@			; `string'
PUBLIC	??_C@_09HPKOACLL@Scan?5Mode?$AA@		; `string'
PUBLIC	?CurrentProgram_OnChange@@YAHJ@Z		; CurrentProgram_OnChange
PUBLIC	??_C@_0M@DEDJNOKH@LastProgram?$AA@		; `string'
PUBLIC	??_C@_0BA@JLJBNFDJ@Current?5Program?$AA@	; `string'
PUBLIC	??_C@_0M@NALIBBDH@CountryCode?$AA@		; `string'
PUBLIC	??_C@_1BI@NFHKLBDB@?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?4?$AAt?$AAx?$AAt?$AA?$AA@ ; `string'
PUBLIC	?TunerSwitchScreenUpdateDelay@@3HA		; TunerSwitchScreenUpdateDelay
PUBLIC	?GetLowerFrequency@CCountryList@@QBEKH@Z	; CCountryList::GetLowerFrequency
PUBLIC	?GetHigherFrequency@CCountryList@@QBEKH@Z	; CCountryList::GetHigherFrequency
PUBLIC	??$?6N@MakeString@@QAEAAV0@ABN@Z		; MakeString::operator<<<double>
PUBLIC	??$?6$$BY08$$CB_W@MakeString@@QAEAAV0@AAY08$$CB_W@Z ; MakeString::operator<<<wchar_t const [9]>
PUBLIC	?GetCountryName@CCountryList@@QBEPB_WH@Z	; CCountryList::GetCountryName
PUBLIC	??$?6$$BY0CE@$$CB_W@MakeString@@QAEAAV0@AAY0CE@$$CB_W@Z ; MakeString::operator<<<wchar_t const [36]>
PUBLIC	??$?6PB_W@MakeString@@QAEAAV0@ABQB_W@Z		; MakeString::operator<<<wchar_t const *>
PUBLIC	??$?6$$BY0BK@$$CB_W@MakeString@@QAEAAV0@AAY0BK@$$CB_W@Z ; MakeString::operator<<<wchar_t const [26]>
PUBLIC	?MyScanMode@@3W4eScanMode@@A			; MyScanMode
PUBLIC	?CountryCode@@3HA				; CountryCode
PUBLIC	?CurrentProgram@@3JA				; CurrentProgram
PUBLIC	?PreviousProgram@@3JA				; PreviousProgram
PUBLIC	?MyInScan@@3HA					; MyInScan
PUBLIC	?MyInUpdate@@3HA				; MyInUpdate
PUBLIC	?MyIsUsingAFC@@3HA				; MyIsUsingAFC
PUBLIC	?MyIsAFCSupported@@3HA				; MyIsAFCSupported
PUBLIC	?WM_DRAGLISTMESSAGE@@3HA			; WM_DRAGLISTMESSAGE
PUBLIC	?DragItemIndex@@3JA				; DragItemIndex
PUBLIC	?PreSwitchMuteDelay@@3HA			; PreSwitchMuteDelay
PUBLIC	?PostSwitchMuteDelay@@3HA			; PostSwitchMuteDelay
PUBLIC	??_C@_1BA@GNLKIIBN@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?$AA@ ; `string'
PUBLIC	??_C@_1O@ONKGPFNO@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAf?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BM@EPHEGCIH@?$AAS?$AAe?$AAt?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BC@JMDMPADK@?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?4?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CE@JNGLIEDD@?$AA?4?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAc?$AAp?$AAp?$AA?$AA@ ; `string'
PUBLIC	??_C@_1EC@BLMLIIIO@?$AAF?$AAi?$AAn?$AAd?$AA_?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAA?$AAF?$AAC?$AA?5?$AAH?$AAi?$AAt?$AA?9?$AA?$DO?$AAf?$AAr?$AAe?$AAq?$AA?$DN?$AA?$CF?$AAd?$AA?6@ ; `string'
PUBLIC	??_C@_1BC@NKCNKEDC@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BI@JMPIBPJF@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?5?$AAM?$AAH?$AAz?$AA?$AA@ ; `string'
PUBLIC	??_C@_1M@FBICDPFE@?$AAA?$AAb?$AAo?$AAr?$AAt?$AA?$AA@ ; `string'
PUBLIC	??_C@_19IGDFBFF@?$AAS?$AAc?$AAa?$AAn?$AA?$AA@	; `string'
PUBLIC	??_C@_1CK@IKJMLFFL@?$AAc?$AAo?$AAm?$AAm?$AAc?$AAt?$AAr?$AAl?$AA_?$AAD?$AAr?$AAa?$AAg?$AAL?$AAi?$AAs?$AAt?$AAM?$AAs?$AAg?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BM@BGMDNHDI@?$AAS?$AAa?$AAm?$AAe?$AA?5?$AAa?$AAs?$AA?5?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BM@KLBLAOMM@?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?5?$AAd?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BC@DADPIMHH@?$AAF?$AAM?$AA?5?$AAR?$AAa?$AAd?$AAi?$AAo?$AA?$AA@ ; `string'
PUBLIC	??_C@_1EI@IFKDICOB@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAr?$AAe?$AAs?$AAe?$AAt?$AAs?$AA?5?$AAc?$AAa?$AAn?$AAn?$AAo?$AAt?$AA?5?$AAb?$AAe?$AA?5?$AAl?$AAo?$AAa?$AAd?$AAe?$AAd@ ; `string'
PUBLIC	??_C@_1DE@HGOJOHCJ@?$AA?$CC?$AA?5?$AAi?$AAs?$AA?5?$AAc?$AAo?$AAr?$AAr?$AAu?$AAp?$AAt?$AAe?$AAd?$AA?5?$AAo?$AAr?$AA?5?$AAm?$AAi?$AAs?$AAs?$AAi?$AAn?$AAg?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CI@NGLPINPI@?$AAF?$AAu?$AAl?$AAl?$AA?5?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAS?$AAc?$AAa?$AAn?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CM@JMJHHIEA@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAL?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAR?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd?$AA?$AA@ ; `string'
PUBLIC	??_C@_1KC@JBDMNBAL@?$AAN?$AAu?$AAm?$AAb?$AAe?$AAr?$AA?5?$AAo?$AAf?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?5?$AAl?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAr?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd@ ; `string'
PUBLIC	??_C@_1BE@KPFOFPGI@?$AAC?$AAl?$AAe?$AAa?$AAr?$AA?5?$AAA?$AAl?$AAl?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BFO@IOBOMCG@?$AAY?$AAo?$AAu?$AA?5?$AAh?$AAa?$AAv?$AAe?$AA?5?$AAr?$AAe?$AAq?$AAu?$AAe?$AAs?$AAt?$AAe?$AAd?$AA?5?$AAa?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAo?$AAs@ ; `string'
PUBLIC	??_C@_1EA@GGJLBDJE@?$AAU?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAw?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAp?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAf?$AAi?$AAl?$AAe?$AA?$AA@ ; `string'
PUBLIC	??_C@_1DM@KPKHLGLK@?$AAD?$AAS?$AAc?$AAa?$AAl?$AAe?$AAr?$AA?4?$AAc?$AAh?$AAm?$AA?3?$AA?3?$AA?1?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAh?$AAt?$AAm?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BE@JGBFLIBK@?$AAN?$AAo?$AAt?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?$AA@ ; `string'
PUBLIC	?ChannelsSettings@@3PAUSETTING@@A		; ChannelsSettings
PUBLIC	?AntiPlopSettings@@3PAUSETTING@@A		; AntiPlopSettings
EXTRN	_wcstol:PROC
EXTRN	__imp__PeekMessageW@20:PROC
EXTRN	__imp__SetCapture@4:PROC
EXTRN	__imp__SetScrollPos@16:PROC
EXTRN	__imp__SetScrollRange@20:PROC
EXTRN	_wcstod:PROC
EXTRN	__imp__MakeDragList@4:PROC
EXTRN	__imp__DrawInsert@12:PROC
EXTRN	__imp__LBItemFromPt@16:PROC
EXTRN	__imp__RemoveMenu@12:PROC
?TunerSwitchScreenUpdateDelay@@3HA DD 01H DUP (?)	; TunerSwitchScreenUpdateDelay
?CurrentProgram@@3JA DD 01H DUP (?)			; CurrentProgram
?PreviousProgram@@3JA DD 01H DUP (?)			; PreviousProgram
?MyInScan@@3HA DD 01H DUP (?)				; MyInScan
?MyInUpdate@@3HA DD 01H DUP (?)				; MyInUpdate
?MyIsAFCSupported@@3HA DD 01H DUP (?)			; MyIsAFCSupported
?WM_DRAGLISTMESSAGE@@3HA DD 01H DUP (?)			; WM_DRAGLISTMESSAGE
?DragItemIndex@@3JA DD 01H DUP (?)			; DragItemIndex
?PreSwitchMuteDelay@@3HA DD 01H DUP (?)			; PreSwitchMuteDelay
?PostSwitchMuteDelay@@3HA DD 01H DUP (?)		; PostSwitchMuteDelay
_TunerSwitchScreenUpdateDelayTimer DD 01H DUP (?)
;	COMDAT ??_C@_0BE@ILGDKIAN@PostSwitchMuteDelay?$AA@
CONST	SEGMENT
??_C@_0BE@ILGDKIAN@PostSwitchMuteDelay?$AA@ DB 'PostSwitchMuteDelay', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BH@CFANGCHG@Post?5switch?5mute?5delay?$AA@
CONST	SEGMENT
??_C@_0BH@CFANGCHG@Post?5switch?5mute?5delay?$AA@ DB 'Post switch mute de'
	DB	'lay', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0BD@ICHMMOND@PreSwitchMuteDelay?$AA@
CONST	SEGMENT
??_C@_0BD@ICHMMOND@PreSwitchMuteDelay?$AA@ DB 'PreSwitchMuteDelay', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BG@BMLFLLJB@Pre?5switch?5mute?5delay?$AA@
CONST	SEGMENT
??_C@_0BG@BMLFLLJB@Pre?5switch?5mute?5delay?$AA@ DB 'Pre switch mute dela'
	DB	'y', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0N@NEEAKNOG@ScanUsingAFC?$AA@
CONST	SEGMENT
??_C@_0N@NEEAKNOG@ScanUsingAFC?$AA@ DB 'ScanUsingAFC', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BH@GBDJCIMH@Use?5AFC?5While?5Scanning?$AA@
CONST	SEGMENT
??_C@_0BH@GBDJCIMH@Use?5AFC?5While?5Scanning?$AA@ DB 'Use AFC While Scann'
	DB	'ing', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_08IHAAJPHC@ScanMode?$AA@
CONST	SEGMENT
??_C@_08IHAAJPHC@ScanMode?$AA@ DB 'ScanMode', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_09HPKOACLL@Scan?5Mode?$AA@
CONST	SEGMENT
??_C@_09HPKOACLL@Scan?5Mode?$AA@ DB 'Scan Mode', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0M@DEDJNOKH@LastProgram?$AA@
CONST	SEGMENT
??_C@_0M@DEDJNOKH@LastProgram?$AA@ DB 'LastProgram', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BA@JLJBNFDJ@Current?5Program?$AA@
CONST	SEGMENT
??_C@_0BA@JLJBNFDJ@Current?5Program?$AA@ DB 'Current Program', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0M@NALIBBDH@CountryCode?$AA@
CONST	SEGMENT
??_C@_0M@NALIBBDH@CountryCode?$AA@ DB 'CountryCode', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BE@JGBFLIBK@?$AAN?$AAo?$AAt?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1BE@JGBFLIBK@?$AAN?$AAo?$AAt?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?$AA@ DB 'N'
	DB	00H, 'o', 00H, 't', 00H, ' ', 00H, 'F', 00H, 'o', 00H, 'u', 00H
	DB	'n', 00H, 'd', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
CONST	SEGMENT
??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@ DB 'N'
	DB	00H, 'o', 00H, ' ', 00H, 'C', 00H, 'h', 00H, 'a', 00H, 'n', 00H
	DB	'n', 00H, 'e', 00H, 'l', 00H, 's', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1DM@KPKHLGLK@?$AAD?$AAS?$AAc?$AAa?$AAl?$AAe?$AAr?$AA?4?$AAc?$AAh?$AAm?$AA?3?$AA?3?$AA?1?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAh?$AAt?$AAm?$AA?$AA@
CONST	SEGMENT
??_C@_1DM@KPKHLGLK@?$AAD?$AAS?$AAc?$AAa?$AAl?$AAe?$AAr?$AA?4?$AAc?$AAh?$AAm?$AA?3?$AA?3?$AA?1?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAh?$AAt?$AAm?$AA?$AA@ DB 'D'
	DB	00H, 'S', 00H, 'c', 00H, 'a', 00H, 'l', 00H, 'e', 00H, 'r', 00H
	DB	'.', 00H, 'c', 00H, 'h', 00H, 'm', 00H, ':', 00H, ':', 00H, '/'
	DB	00H, 'P', 00H, 'r', 00H, 'o', 00H, 'g', 00H, 'r', 00H, 'a', 00H
	DB	'm', 00H, 'L', 00H, 'i', 00H, 's', 00H, 't', 00H, '.', 00H, 'h'
	DB	00H, 't', 00H, 'm', 00H, 00H, 00H		; `string'
CONST	ENDS
;	COMDAT ??_C@_1EA@GGJLBDJE@?$AAU?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAw?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAp?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAf?$AAi?$AAl?$AAe?$AA?$AA@
CONST	SEGMENT
??_C@_1EA@GGJLBDJE@?$AAU?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAw?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAp?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAf?$AAi?$AAl?$AAe?$AA?$AA@ DB 'U'
	DB	00H, 'n', 00H, 'a', 00H, 'b', 00H, 'l', 00H, 'e', 00H, ' ', 00H
	DB	't', 00H, 'o', 00H, ' ', 00H, 'w', 00H, 'r', 00H, 'i', 00H, 't'
	DB	00H, 'e', 00H, ' ', 00H, 't', 00H, 'o', 00H, ' ', 00H, 'p', 00H
	DB	'r', 00H, 'o', 00H, 'g', 00H, 'r', 00H, 'a', 00H, 'm', 00H, ' '
	DB	00H, 'f', 00H, 'i', 00H, 'l', 00H, 'e', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BFO@IOBOMCG@?$AAY?$AAo?$AAu?$AA?5?$AAh?$AAa?$AAv?$AAe?$AA?5?$AAr?$AAe?$AAq?$AAu?$AAe?$AAs?$AAt?$AAe?$AAd?$AA?5?$AAa?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAo?$AAs@
CONST	SEGMENT
??_C@_1BFO@IOBOMCG@?$AAY?$AAo?$AAu?$AA?5?$AAh?$AAa?$AAv?$AAe?$AA?5?$AAr?$AAe?$AAq?$AAu?$AAe?$AAs?$AAt?$AAe?$AAd?$AA?5?$AAa?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAo?$AAs@ DB 'Y'
	DB	00H, 'o', 00H, 'u', 00H, ' ', 00H, 'h', 00H, 'a', 00H, 'v', 00H
	DB	'e', 00H, ' ', 00H, 'r', 00H, 'e', 00H, 'q', 00H, 'u', 00H, 'e'
	DB	00H, 's', 00H, 't', 00H, 'e', 00H, 'd', 00H, ' ', 00H, 'a', 00H
	DB	' ', 00H, 'c', 00H, 'h', 00H, 'a', 00H, 'n', 00H, 'n', 00H, 'e'
	DB	00H, 'l', 00H, ' ', 00H, 'p', 00H, 'o', 00H, 's', 00H, 'i', 00H
	DB	't', 00H, 'i', 00H, 'o', 00H, 'n', 00H, ' ', 00H, 's', 00H, 'c'
	DB	00H, 'a', 00H, 'n', 00H, ' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H
	DB	' ', 00H, 'y', 00H, 'o', 00H, 'u', 00H, ' ', 00H, 'a', 00H, 'l'
	DB	00H, 'r', 00H, 'e', 00H, 'a', 00H, 'd', 00H, 'y', 00H, ' ', 00H
	DB	'h', 00H, 'a', 00H, 'v', 00H, 'e', 00H, ' ', 00H, 'c', 00H, 'h'
	DB	00H, 'a', 00H, 'n', 00H, 'n', 00H, 'e', 00H, 'l', 00H, 's', 00H
	DB	'.', 00H, 0aH, 00H, 'P', 00H, 'r', 00H, 'o', 00H, 'c', 00H, 'e'
	DB	00H, 'e', 00H, 'd', 00H, 'i', 00H, 'n', 00H, 'g', 00H, ' ', 00H
	DB	'w', 00H, 'i', 00H, 'l', 00H, 'l', 00H, ' ', 00H, 'd', 00H, 'e'
	DB	00H, 'l', 00H, 'e', 00H, 't', 00H, 'e', 00H, ' ', 00H, 'a', 00H
	DB	'l', 00H, 'l', 00H, ' ', 00H, 'y', 00H, 'o', 00H, 'u', 00H, 'r'
	DB	00H, ' ', 00H, 'e', 00H, 'x', 00H, 'i', 00H, 's', 00H, 't', 00H
	DB	'i', 00H, 'n', 00H, 'g', 00H, ' ', 00H, 's', 00H, 'e', 00H, 't'
	DB	00H, 'u', 00H, 'p', 00H, '.', 00H, 0aH, 00H, 'D', 00H, 'o', 00H
	DB	' ', 00H, 'y', 00H, 'o', 00H, 'u', 00H, ' ', 00H, 'w', 00H, 'a'
	DB	00H, 'n', 00H, 't', 00H, ' ', 00H, 't', 00H, 'o', 00H, ' ', 00H
	DB	'p', 00H, 'r', 00H, 'o', 00H, 'c', 00H, 'e', 00H, 'e', 00H, 'd'
	DB	00H, ' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 'd', 00H
	DB	'e', 00H, 'l', 00H, 'e', 00H, 't', 00H, 'e', 00H, ' ', 00H, 't'
	DB	00H, 'h', 00H, 'e', 00H, ' ', 00H, 'e', 00H, 'x', 00H, 'i', 00H
	DB	's', 00H, 't', 00H, 'i', 00H, 'n', 00H, 'g', 00H, ' ', 00H, 'l'
	DB	00H, 'i', 00H, 's', 00H, 't', 00H, '?', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BE@KPFOFPGI@?$AAC?$AAl?$AAe?$AAa?$AAr?$AA?5?$AAA?$AAl?$AAl?$AA?$AA@
CONST	SEGMENT
??_C@_1BE@KPFOFPGI@?$AAC?$AAl?$AAe?$AAa?$AAr?$AA?5?$AAA?$AAl?$AAl?$AA?$AA@ DB 'C'
	DB	00H, 'l', 00H, 'e', 00H, 'a', 00H, 'r', 00H, ' ', 00H, 'A', 00H
	DB	'l', 00H, 'l', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1KC@JBDMNBAL@?$AAN?$AAu?$AAm?$AAb?$AAe?$AAr?$AA?5?$AAo?$AAf?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?5?$AAl?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAr?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd@
CONST	SEGMENT
??_C@_1KC@JBDMNBAL@?$AAN?$AAu?$AAm?$AAb?$AAe?$AAr?$AA?5?$AAo?$AAf?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?5?$AAl?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAr?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd@ DB 'N'
	DB	00H, 'u', 00H, 'm', 00H, 'b', 00H, 'e', 00H, 'r', 00H, ' ', 00H
	DB	'o', 00H, 'f', 00H, ' ', 00H, 'c', 00H, 'h', 00H, 'a', 00H, 'n'
	DB	00H, 'n', 00H, 'e', 00H, 'l', 00H, 's', 00H, ' ', 00H, 'l', 00H
	DB	'i', 00H, 'm', 00H, 'i', 00H, 't', 00H, ' ', 00H, 'r', 00H, 'e'
	DB	00H, 'a', 00H, 'c', 00H, 'h', 00H, 'e', 00H, 'd', 00H, '.', 00H
	DB	0aH, 00H, 'R', 00H, 'e', 00H, 'm', 00H, 'o', 00H, 'v', 00H, 'e'
	DB	00H, ' ', 00H, 's', 00H, 'o', 00H, 'm', 00H, 'e', 00H, ' ', 00H
	DB	'c', 00H, 'h', 00H, 'a', 00H, 'n', 00H, 'n', 00H, 'e', 00H, 'l'
	DB	00H, 's', 00H, ' ', 00H, 'b', 00H, 'e', 00H, 'f', 00H, 'o', 00H
	DB	'r', 00H, 'e', 00H, ' ', 00H, 'p', 00H, 'r', 00H, 'o', 00H, 'c'
	DB	00H, 'e', 00H, 'e', 00H, 'd', 00H, 'i', 00H, 'n', 00H, 'g', 00H
	DB	' ', 00H, 'f', 00H, 'u', 00H, 'r', 00H, 't', 00H, 'h', 00H, 'e'
	DB	00H, 'r', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1CM@JMJHHIEA@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAL?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAR?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1CM@JMJHHIEA@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAL?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAR?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd?$AA?$AA@ DB 'C'
	DB	00H, 'h', 00H, 'a', 00H, 'n', 00H, 'n', 00H, 'e', 00H, 'l', 00H
	DB	' ', 00H, 'L', 00H, 'i', 00H, 'm', 00H, 'i', 00H, 't', 00H, ' '
	DB	00H, 'R', 00H, 'e', 00H, 'a', 00H, 'c', 00H, 'h', 00H, 'e', 00H
	DB	'd', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1CI@NGLPINPI@?$AAF?$AAu?$AAl?$AAl?$AA?5?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAS?$AAc?$AAa?$AAn?$AA?$AA@
CONST	SEGMENT
??_C@_1CI@NGLPINPI@?$AAF?$AAu?$AAl?$AAl?$AA?5?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAS?$AAc?$AAa?$AAn?$AA?$AA@ DB 'F'
	DB	00H, 'u', 00H, 'l', 00H, 'l', 00H, ' ', 00H, 'F', 00H, 'r', 00H
	DB	'e', 00H, 'q', 00H, 'u', 00H, 'e', 00H, 'n', 00H, 'c', 00H, 'y'
	DB	00H, ' ', 00H, 'S', 00H, 'c', 00H, 'a', 00H, 'n', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1DE@HGOJOHCJ@?$AA?$CC?$AA?5?$AAi?$AAs?$AA?5?$AAc?$AAo?$AAr?$AAr?$AAu?$AAp?$AAt?$AAe?$AAd?$AA?5?$AAo?$AAr?$AA?5?$AAm?$AAi?$AAs?$AAs?$AAi?$AAn?$AAg?$AA?$AA@
CONST	SEGMENT
??_C@_1DE@HGOJOHCJ@?$AA?$CC?$AA?5?$AAi?$AAs?$AA?5?$AAc?$AAo?$AAr?$AAr?$AAu?$AAp?$AAt?$AAe?$AAd?$AA?5?$AAo?$AAr?$AA?5?$AAm?$AAi?$AAs?$AAs?$AAi?$AAn?$AAg?$AA?$AA@ DB '"'
	DB	00H, ' ', 00H, 'i', 00H, 's', 00H, ' ', 00H, 'c', 00H, 'o', 00H
	DB	'r', 00H, 'r', 00H, 'u', 00H, 'p', 00H, 't', 00H, 'e', 00H, 'd'
	DB	00H, ' ', 00H, 'o', 00H, 'r', 00H, ' ', 00H, 'm', 00H, 'i', 00H
	DB	's', 00H, 's', 00H, 'i', 00H, 'n', 00H, 'g', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1EI@IFKDICOB@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAr?$AAe?$AAs?$AAe?$AAt?$AAs?$AA?5?$AAc?$AAa?$AAn?$AAn?$AAo?$AAt?$AA?5?$AAb?$AAe?$AA?5?$AAl?$AAo?$AAa?$AAd?$AAe?$AAd@
CONST	SEGMENT
??_C@_1EI@IFKDICOB@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAr?$AAe?$AAs?$AAe?$AAt?$AAs?$AA?5?$AAc?$AAa?$AAn?$AAn?$AAo?$AAt?$AA?5?$AAb?$AAe?$AA?5?$AAl?$AAo?$AAa?$AAd?$AAe?$AAd@ DB 'C'
	DB	00H, 'h', 00H, 'a', 00H, 'n', 00H, 'n', 00H, 'e', 00H, 'l', 00H
	DB	' ', 00H, 'p', 00H, 'r', 00H, 'e', 00H, 's', 00H, 'e', 00H, 't'
	DB	00H, 's', 00H, ' ', 00H, 'c', 00H, 'a', 00H, 'n', 00H, 'n', 00H
	DB	'o', 00H, 't', 00H, ' ', 00H, 'b', 00H, 'e', 00H, ' ', 00H, 'l'
	DB	00H, 'o', 00H, 'a', 00H, 'd', 00H, 'e', 00H, 'd', 00H, ',', 00H
	DB	' ', 00H, '"', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1BC@DADPIMHH@?$AAF?$AAM?$AA?5?$AAR?$AAa?$AAd?$AAi?$AAo?$AA?$AA@
CONST	SEGMENT
??_C@_1BC@DADPIMHH@?$AAF?$AAM?$AA?5?$AAR?$AAa?$AAd?$AAi?$AAo?$AA?$AA@ DB 'F'
	DB	00H, 'M', 00H, ' ', 00H, 'R', 00H, 'a', 00H, 'd', 00H, 'i', 00H
	DB	'o', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1BM@KLBLAOMM@?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?5?$AAd?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AA?$AA@
CONST	SEGMENT
??_C@_1BM@KLBLAOMM@?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?5?$AAd?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AA?$AA@ DB 'T'
	DB	00H, 'u', 00H, 'n', 00H, 'e', 00H, 'r', 00H, ' ', 00H, 'd', 00H
	DB	'e', 00H, 'f', 00H, 'a', 00H, 'u', 00H, 'l', 00H, 't', 00H, 00H
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_1BM@BGMDNHDI@?$AAS?$AAa?$AAm?$AAe?$AA?5?$AAa?$AAs?$AA?5?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?$AA@
CONST	SEGMENT
??_C@_1BM@BGMDNHDI@?$AAS?$AAa?$AAm?$AAe?$AA?5?$AAa?$AAs?$AA?5?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?$AA@ DB 'S'
	DB	00H, 'a', 00H, 'm', 00H, 'e', 00H, ' ', 00H, 'a', 00H, 's', 00H
	DB	' ', 00H, 'T', 00H, 'u', 00H, 'n', 00H, 'e', 00H, 'r', 00H, 00H
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_1CK@IKJMLFFL@?$AAc?$AAo?$AAm?$AAm?$AAc?$AAt?$AAr?$AAl?$AA_?$AAD?$AAr?$AAa?$AAg?$AAL?$AAi?$AAs?$AAt?$AAM?$AAs?$AAg?$AA?$AA@
CONST	SEGMENT
??_C@_1CK@IKJMLFFL@?$AAc?$AAo?$AAm?$AAm?$AAc?$AAt?$AAr?$AAl?$AA_?$AAD?$AAr?$AAa?$AAg?$AAL?$AAi?$AAs?$AAt?$AAM?$AAs?$AAg?$AA?$AA@ DB 'c'
	DB	00H, 'o', 00H, 'm', 00H, 'm', 00H, 'c', 00H, 't', 00H, 'r', 00H
	DB	'l', 00H, '_', 00H, 'D', 00H, 'r', 00H, 'a', 00H, 'g', 00H, 'L'
	DB	00H, 'i', 00H, 's', 00H, 't', 00H, 'M', 00H, 's', 00H, 'g', 00H
	DB	00H, 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_19IGDFBFF@?$AAS?$AAc?$AAa?$AAn?$AA?$AA@
CONST	SEGMENT
??_C@_19IGDFBFF@?$AAS?$AAc?$AAa?$AAn?$AA?$AA@ DB 'S', 00H, 'c', 00H, 'a', 00H
	DB	'n', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1M@FBICDPFE@?$AAA?$AAb?$AAo?$AAr?$AAt?$AA?$AA@
CONST	SEGMENT
??_C@_1M@FBICDPFE@?$AAA?$AAb?$AAo?$AAr?$AAt?$AA?$AA@ DB 'A', 00H, 'b', 00H
	DB	'o', 00H, 'r', 00H, 't', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1BI@JMPIBPJF@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?5?$AAM?$AAH?$AAz?$AA?$AA@
CONST	SEGMENT
??_C@_1BI@JMPIBPJF@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?5?$AAM?$AAH?$AAz?$AA?$AA@ DB '%'
	DB	00H, '1', 00H, '0', 00H, '.', 00H, '4', 00H, 'l', 00H, 'f', 00H
	DB	' ', 00H, 'M', 00H, 'H', 00H, 'z', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BC@NKCNKEDC@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AA?$AA@
CONST	SEGMENT
??_C@_1BC@NKCNKEDC@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AA?$AA@ DB 'C'
	DB	00H, 'h', 00H, 'a', 00H, 'n', 00H, 'n', 00H, 'e', 00H, 'l', 00H
	DB	' ', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1EC@BLMLIIIO@?$AAF?$AAi?$AAn?$AAd?$AA_?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAA?$AAF?$AAC?$AA?5?$AAH?$AAi?$AAt?$AA?9?$AA?$DO?$AAf?$AAr?$AAe?$AAq?$AA?$DN?$AA?$CF?$AAd?$AA?6@
CONST	SEGMENT
??_C@_1EC@BLMLIIIO@?$AAF?$AAi?$AAn?$AAd?$AA_?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAA?$AAF?$AAC?$AA?5?$AAH?$AAi?$AAt?$AA?9?$AA?$DO?$AAf?$AAr?$AAe?$AAq?$AA?$DN?$AA?$CF?$AAd?$AA?6@ DB 'F'
	DB	00H, 'i', 00H, 'n', 00H, 'd', 00H, '_', 00H, 'F', 00H, 'r', 00H
	DB	'e', 00H, 'q', 00H, 'u', 00H, 'e', 00H, 'n', 00H, 'c', 00H, 'y'
	DB	00H, ' ', 00H, 'A', 00H, 'F', 00H, 'C', 00H, ' ', 00H, 'H', 00H
	DB	'i', 00H, 't', 00H, '-', 00H, '>', 00H, 'f', 00H, 'r', 00H, 'e'
	DB	00H, 'q', 00H, '=', 00H, '%', 00H, 'd', 00H, 0aH, 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1CE@JNGLIEDD@?$AA?4?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAc?$AAp?$AAp?$AA?$AA@
CONST	SEGMENT
??_C@_1CE@JNGLIEDD@?$AA?4?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAc?$AAp?$AAp?$AA?$AA@ DB '.'
	DB	00H, '\', 00H, 'P', 00H, 'r', 00H, 'o', 00H, 'g', 00H, 'r', 00H
	DB	'a', 00H, 'm', 00H, 'L', 00H, 'i', 00H, 's', 00H, 't', 00H, '.'
	DB	00H, 'c', 00H, 'p', 00H, 'p', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1BC@JMDMPADK@?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?4?$AA?$AA@
CONST	SEGMENT
??_C@_1BC@JMDMPADK@?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?4?$AA?$AA@ DB ' '
	DB	00H, 'F', 00H, 'a', 00H, 'i', 00H, 'l', 00H, 'e', 00H, 'd', 00H
	DB	'.', 00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1BM@EPHEGCIH@?$AAS?$AAe?$AAt?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AA?$AA@
CONST	SEGMENT
??_C@_1BM@EPHEGCIH@?$AAS?$AAe?$AAt?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AA?$AA@ DB 'S'
	DB	00H, 'e', 00H, 't', 00H, 'F', 00H, 'r', 00H, 'e', 00H, 'q', 00H
	DB	'u', 00H, 'e', 00H, 'n', 00H, 'c', 00H, 'y', 00H, ' ', 00H, 00H
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_1O@ONKGPFNO@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAf?$AA?$AA@
CONST	SEGMENT
??_C@_1O@ONKGPFNO@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAf?$AA?$AA@ DB '%', 00H
	DB	'1', 00H, '0', 00H, '.', 00H, '4', 00H, 'f', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BA@GNLKIIBN@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?$AA@
CONST	SEGMENT
??_C@_1BA@GNLKIIBN@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?$AA@ DB '%'
	DB	00H, '1', 00H, '0', 00H, '.', 00H, '4', 00H, 'l', 00H, 'f', 00H
	DB	00H, 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_1BI@NFHKLBDB@?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?4?$AAt?$AAx?$AAt?$AA?$AA@
CONST	SEGMENT
??_C@_1BI@NFHKLBDB@?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?4?$AAt?$AAx?$AAt?$AA?$AA@ DB 'c'
	DB	00H, 'h', 00H, 'a', 00H, 'n', 00H, 'n', 00H, 'e', 00H, 'l', 00H
	DB	'.', 00H, 't', 00H, 'x', 00H, 't', 00H, 00H, 00H ; `string'
_SZ_DEFAULT_CHANNELS_FILENAME DD FLAT:??_C@_1BI@NFHKLBDB@?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?4?$AAt?$AAx?$AAt?$AA?$AA@
?MyScanMode@@3W4eScanMode@@A DD 01H			; MyScanMode
?CountryCode@@3HA DD 01H				; CountryCode
?MyIsUsingAFC@@3HA DD 01H				; MyIsUsingAFC
_InitialNbMenuItems DD 0ffffffffH
?ChannelsSettings@@3PAUSETTING@@A DD FLAT:??_C@_0M@NALIBBDH@CountryCode?$AA@ ; ChannelsSettings
	DD	04H
	DD	00H
	DD	FLAT:?CountryCode@@3HA
	DD	01H
	DD	00H
	DD	064H
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_04JLAJABDJ@Show?$AA@
	DD	FLAT:??_C@_0M@NALIBBDH@CountryCode?$AA@
	DD	00H
	DD	FLAT:??_C@_0BA@JLJBNFDJ@Current?5Program?$AA@
	DD	04H
	DD	00H
	DD	FLAT:?CurrentProgram@@3JA
	DD	00H
	DD	00H
	DD	0ffH
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_04JLAJABDJ@Show?$AA@
	DD	FLAT:??_C@_0M@DEDJNOKH@LastProgram?$AA@
	DD	FLAT:?CurrentProgram_OnChange@@YAHJ@Z
	DD	FLAT:??_C@_09HPKOACLL@Scan?5Mode?$AA@
	DD	04H
	DD	00H
	DD	FLAT:?MyScanMode@@3W4eScanMode@@A
	DD	00H
	DD	00H
	DD	03H
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_04JLAJABDJ@Show?$AA@
	DD	FLAT:??_C@_08IHAAJPHC@ScanMode?$AA@
	DD	00H
	DD	FLAT:??_C@_0BH@GBDJCIMH@Use?5AFC?5While?5Scanning?$AA@
	DD	01H
	DD	00H
	DD	FLAT:?MyIsUsingAFC@@3HA
	DD	01H
	DD	00H
	DD	01H
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_04JLAJABDJ@Show?$AA@
	DD	FLAT:??_C@_0N@NEEAKNOG@ScanUsingAFC?$AA@
	DD	00H
?AntiPlopSettings@@3PAUSETTING@@A DD FLAT:??_C@_0BG@BMLFLLJB@Pre?5switch?5mute?5delay?$AA@ ; AntiPlopSettings
	DD	04H
	DD	00H
	DD	FLAT:?PreSwitchMuteDelay@@3HA
	DD	064H
	DD	00H
	DD	03e8H
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_05KKCMAPLJ@Audio?$AA@
	DD	FLAT:??_C@_0BD@ICHMMOND@PreSwitchMuteDelay?$AA@
	DD	00H
	DD	FLAT:??_C@_0BH@CFANGCHG@Post?5switch?5mute?5delay?$AA@
	DD	04H
	DD	00H
	DD	FLAT:?PostSwitchMuteDelay@@3HA
	DD	0258H
	DD	00H
	DD	03e8H
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_05KKCMAPLJ@Audio?$AA@
	DD	FLAT:??_C@_0BE@ILGDKIAN@PostSwitchMuteDelay?$AA@
	DD	00H
PUBLIC	?AntiPlop_GetSetting@@YAPAUSETTING@@W4ANTIPLOP_SETTING@@@Z ; AntiPlop_GetSetting
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\programlist.cpp
;	COMDAT ?AntiPlop_GetSetting@@YAPAUSETTING@@W4ANTIPLOP_SETTING@@@Z
_TEXT	SEGMENT
_Setting$ = 8						; size = 4
?AntiPlop_GetSetting@@YAPAUSETTING@@W4ANTIPLOP_SETTING@@@Z PROC ; AntiPlop_GetSetting, COMDAT

; 1874 : {

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

; 1875 :     if(Setting > -1 && Setting < ANTIPLOP_SETTING_LASTONE)

  00003	83 7d 08 ff	 cmp	 DWORD PTR _Setting$[ebp], -1
  00007	7e 15		 jle	 SHORT $LN2@AntiPlop_G
  00009	83 7d 08 02	 cmp	 DWORD PTR _Setting$[ebp], 2
  0000d	7d 0f		 jge	 SHORT $LN2@AntiPlop_G

; 1876 :     {
; 1877 :         return &(AntiPlopSettings[Setting]);

  0000f	8b 45 08	 mov	 eax, DWORD PTR _Setting$[ebp]
  00012	6b c0 34	 imul	 eax, 52			; 00000034H
  00015	05 00 00 00 00	 add	 eax, OFFSET ?AntiPlopSettings@@3PAUSETTING@@A ; AntiPlopSettings
  0001a	eb 04		 jmp	 SHORT $LN3@AntiPlop_G

; 1878 :     }
; 1879 :     else

  0001c	eb 02		 jmp	 SHORT $LN3@AntiPlop_G
$LN2@AntiPlop_G:

; 1880 :     {
; 1881 :         return NULL;

  0001e	33 c0		 xor	 eax, eax
$LN3@AntiPlop_G:

; 1882 :     }
; 1883 : }

  00020	5d		 pop	 ebp
  00021	c3		 ret	 0
?AntiPlop_GetSetting@@YAPAUSETTING@@W4ANTIPLOP_SETTING@@@Z ENDP ; AntiPlop_GetSetting
_TEXT	ENDS
PUBLIC	?Channels_GetSetting@@YAPAUSETTING@@W4CHANNELS_SETTING@@@Z ; Channels_GetSetting
; Function compile flags: /Odtp
;	COMDAT ?Channels_GetSetting@@YAPAUSETTING@@W4CHANNELS_SETTING@@@Z
_TEXT	SEGMENT
_Setting$ = 8						; size = 4
?Channels_GetSetting@@YAPAUSETTING@@W4CHANNELS_SETTING@@@Z PROC ; Channels_GetSetting, COMDAT

; 1846 : {

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

; 1847 :     if(Setting > -1 && Setting < CHANNELS_SETTING_LASTONE)

  00003	83 7d 08 ff	 cmp	 DWORD PTR _Setting$[ebp], -1
  00007	7e 15		 jle	 SHORT $LN2@Channels_G
  00009	83 7d 08 04	 cmp	 DWORD PTR _Setting$[ebp], 4
  0000d	7d 0f		 jge	 SHORT $LN2@Channels_G

; 1848 :     {
; 1849 :         return &(ChannelsSettings[Setting]);

  0000f	8b 45 08	 mov	 eax, DWORD PTR _Setting$[ebp]
  00012	6b c0 34	 imul	 eax, 52			; 00000034H
  00015	05 00 00 00 00	 add	 eax, OFFSET ?ChannelsSettings@@3PAUSETTING@@A ; ChannelsSettings
  0001a	eb 04		 jmp	 SHORT $LN3@Channels_G

; 1850 :     }
; 1851 :     else

  0001c	eb 02		 jmp	 SHORT $LN3@Channels_G
$LN2@Channels_G:

; 1852 :     {
; 1853 :         return NULL;

  0001e	33 c0		 xor	 eax, eax
$LN3@Channels_G:

; 1854 :     }
; 1855 : }

  00020	5d		 pop	 ebp
  00021	c3		 ret	 0
?Channels_GetSetting@@YAPAUSETTING@@W4CHANNELS_SETTING@@@Z ENDP ; Channels_GetSetting
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?TunerSwitchScreenUpdateDelayTimerProc@@YGXPAUHWND__@@IIK@Z
_TEXT	SEGMENT
_hwnd$ = 8						; size = 4
_message$ = 12						; size = 4
_idTimer$ = 16						; size = 4
_dwTime$ = 20						; size = 4
?TunerSwitchScreenUpdateDelayTimerProc@@YGXPAUHWND__@@IIK@Z PROC ; TunerSwitchScreenUpdateDelayTimerProc, COMDAT

; 1447 : {

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

; 1448 :     TunerSwitchScreenUpdateDelayTimer = 0;

  00003	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR _TunerSwitchScreenUpdateDelayTimer, 0

; 1449 :     KillTimer(hwnd, idTimer);

  0000d	8b 45 10	 mov	 eax, DWORD PTR _idTimer$[ebp]
  00010	50		 push	 eax
  00011	8b 4d 08	 mov	 ecx, DWORD PTR _hwnd$[ebp]
  00014	51		 push	 ecx
  00015	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__KillTimer@8

; 1450 :     bNoScreenUpdateDuringTuning = FALSE;

  0001b	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?bNoScreenUpdateDuringTuning@@3HA, 0 ; bNoScreenUpdateDuringTuning

; 1451 : }

  00025	5d		 pop	 ebp
  00026	c2 10 00	 ret	 16			; 00000010H
?TunerSwitchScreenUpdateDelayTimerProc@@YGXPAUHWND__@@IIK@Z ENDP ; TunerSwitchScreenUpdateDelayTimerProc
_TEXT	ENDS
PUBLIC	?UpdateEnabledState@@YAXPAUHWND__@@H@Z		; UpdateEnabledState
; Function compile flags: /Odtp
;	COMDAT ?UpdateEnabledState@@YAXPAUHWND__@@H@Z
_TEXT	SEGMENT
tv293 = -16						; size = 4
tv67 = -12						; size = 4
tv66 = -8						; size = 4
_enabledButInScan$ = -4					; size = 4
_hDlg$ = 8						; size = 4
_bEnabled$ = 12						; size = 4
?UpdateEnabledState@@YAXPAUHWND__@@H@Z PROC		; UpdateEnabledState, COMDAT

; 363  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 10	 sub	 esp, 16			; 00000010H

; 364  :     MyInUpdate = TRUE;

  00006	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 365  : 
; 366  :     //That's a shortcut
; 367  :     BOOL enabledButInScan = (bEnabled && !MyInScan);

  00010	83 7d 0c 00	 cmp	 DWORD PTR _bEnabled$[ebp], 0
  00014	74 12		 je	 SHORT $LN8@UpdateEnab
  00016	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInScan@@3HA, 0 ; MyInScan
  0001d	75 09		 jne	 SHORT $LN8@UpdateEnab
  0001f	c7 45 f8 01 00
	00 00		 mov	 DWORD PTR tv66[ebp], 1
  00026	eb 07		 jmp	 SHORT $LN9@UpdateEnab
$LN8@UpdateEnab:
  00028	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR tv66[ebp], 0
$LN9@UpdateEnab:
  0002f	8b 45 f8	 mov	 eax, DWORD PTR tv66[ebp]
  00032	89 45 fc	 mov	 DWORD PTR _enabledButInScan$[ebp], eax

; 368  : 
; 369  : 
; 370  :     //List box is always enabled
; 371  :     ListBox_Enable(GetDlgItem(hDlg, IDC_PROGRAMLIST), TRUE);

  00035	6a 01		 push	 1
  00037	68 c4 06 00 00	 push	 1732			; 000006c4H
  0003c	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0003f	51		 push	 ecx
  00040	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00046	50		 push	 eax
  00047	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 372  : 
; 373  :     Button_Enable(GetDlgItem(hDlg, IDOK), enabledButInScan);

  0004d	8b 55 fc	 mov	 edx, DWORD PTR _enabledButInScan$[ebp]
  00050	52		 push	 edx
  00051	6a 01		 push	 1
  00053	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00056	50		 push	 eax
  00057	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0005d	50		 push	 eax
  0005e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 374  :     Button_Enable(GetDlgItem(hDlg, IDCANCEL), enabledButInScan);

  00064	8b 4d fc	 mov	 ecx, DWORD PTR _enabledButInScan$[ebp]
  00067	51		 push	 ecx
  00068	6a 02		 push	 2
  0006a	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0006d	52		 push	 edx
  0006e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00074	50		 push	 eax
  00075	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 375  :     Button_Enable(GetDlgItem(hDlg, IDC_CLEAR), enabledButInScan);

  0007b	8b 45 fc	 mov	 eax, DWORD PTR _enabledButInScan$[ebp]
  0007e	50		 push	 eax
  0007f	6a 03		 push	 3
  00081	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00084	51		 push	 ecx
  00085	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0008b	50		 push	 eax
  0008c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 376  : 
; 377  :     Button_Enable(GetDlgItem(hDlg, IDC_SCAN_RADIO1), enabledButInScan);

  00092	8b 55 fc	 mov	 edx, DWORD PTR _enabledButInScan$[ebp]
  00095	52		 push	 edx
  00096	68 c6 06 00 00	 push	 1734			; 000006c6H
  0009b	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0009e	50		 push	 eax
  0009f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000a5	50		 push	 eax
  000a6	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 378  :     Button_Enable(GetDlgItem(hDlg, IDC_SCAN_RADIO2), enabledButInScan);

  000ac	8b 4d fc	 mov	 ecx, DWORD PTR _enabledButInScan$[ebp]
  000af	51		 push	 ecx
  000b0	68 c7 06 00 00	 push	 1735			; 000006c7H
  000b5	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  000b8	52		 push	 edx
  000b9	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000bf	50		 push	 eax
  000c0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 379  : 
; 380  :     Button_Enable(GetDlgItem(hDlg, IDC_SETFREQ), enabledButInScan);

  000c6	8b 45 fc	 mov	 eax, DWORD PTR _enabledButInScan$[ebp]
  000c9	50		 push	 eax
  000ca	68 87 05 00 00	 push	 1415			; 00000587H
  000cf	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000d2	51		 push	 ecx
  000d3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000d9	50		 push	 eax
  000da	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 381  :     Button_Enable(GetDlgItem(hDlg, IDC_CHANNEL_MUTE), bEnabled);

  000e0	8b 55 0c	 mov	 edx, DWORD PTR _bEnabled$[ebp]
  000e3	52		 push	 edx
  000e4	68 99 05 00 00	 push	 1433			; 00000599H
  000e9	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  000ec	50		 push	 eax
  000ed	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000f3	50		 push	 eax
  000f4	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 382  : 
; 383  : 
; 384  :     switch (MyScanMode) {

  000fa	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?MyScanMode@@3W4eScanMode@@A ; MyScanMode
  00100	89 4d f4	 mov	 DWORD PTR tv67[ebp], ecx
  00103	83 7d f4 00	 cmp	 DWORD PTR tv67[ebp], 0
  00107	74 19		 je	 SHORT $LN3@UpdateEnab
  00109	83 7d f4 01	 cmp	 DWORD PTR tv67[ebp], 1
  0010d	0f 84 10 01 00
	00		 je	 $LN2@UpdateEnab
  00113	83 7d f4 02	 cmp	 DWORD PTR tv67[ebp], 2
  00117	0f 84 ff 01 00
	00		 je	 $LN1@UpdateEnab
  0011d	e9 35 03 00 00	 jmp	 $LN4@UpdateEnab
$LN3@UpdateEnab:

; 385  :         case SCAN_MODE_PRESETS :
; 386  :             Button_Enable(GetDlgItem(hDlg, IDC_ADD), enabledButInScan);

  00122	8b 55 fc	 mov	 edx, DWORD PTR _enabledButInScan$[ebp]
  00125	52		 push	 edx
  00126	68 79 05 00 00	 push	 1401			; 00000579H
  0012b	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0012e	50		 push	 eax
  0012f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00135	50		 push	 eax
  00136	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 387  :             Button_Enable(GetDlgItem(hDlg, IDC_REMOVE), enabledButInScan);

  0013c	8b 4d fc	 mov	 ecx, DWORD PTR _enabledButInScan$[ebp]
  0013f	51		 push	 ecx
  00140	68 e0 06 00 00	 push	 1760			; 000006e0H
  00145	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00148	52		 push	 edx
  00149	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0014f	50		 push	 eax
  00150	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 388  : 
; 389  :             Button_Enable(GetDlgItem(hDlg, IDC_CUSTOMCHANNELORDER), bEnabled);

  00156	8b 45 0c	 mov	 eax, DWORD PTR _bEnabled$[ebp]
  00159	50		 push	 eax
  0015a	68 ba 05 00 00	 push	 1466			; 000005baH
  0015f	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00162	51		 push	 ecx
  00163	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00169	50		 push	 eax
  0016a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 390  :             ComboBox_Enable(GetDlgItem(hDlg, IDC_COUNTRY), bEnabled);

  00170	8b 55 0c	 mov	 edx, DWORD PTR _bEnabled$[ebp]
  00173	52		 push	 edx
  00174	68 b7 05 00 00	 push	 1463			; 000005b7H
  00179	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0017c	50		 push	 eax
  0017d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00183	50		 push	 eax
  00184	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 391  : 
; 392  :             //Disable the whole AutoScan Panel
; 393  :             //(I know it's a copy/paste, but it's easier than a
; 394  :             //smart algorithm)
; 395  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_MIN_FREQ), FALSE);

  0018a	6a 00		 push	 0
  0018c	68 f4 05 00 00	 push	 1524			; 000005f4H
  00191	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00194	51		 push	 ecx
  00195	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0019b	50		 push	 eax
  0019c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 396  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_MAX_FREQ), FALSE);

  001a2	6a 00		 push	 0
  001a4	68 f3 05 00 00	 push	 1523			; 000005f3H
  001a9	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  001ac	52		 push	 edx
  001ad	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  001b3	50		 push	 eax
  001b4	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 397  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_STEPS), FALSE);

  001ba	6a 00		 push	 0
  001bc	68 f5 05 00 00	 push	 1525			; 000005f5H
  001c1	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  001c4	50		 push	 eax
  001c5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  001cb	50		 push	 eax
  001cc	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 398  :             Button_Enable(GetDlgItem(hDlg, IDC_SCAN_AFC), FALSE);

  001d2	6a 00		 push	 0
  001d4	68 9a 05 00 00	 push	 1434			; 0000059aH
  001d9	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  001dc	51		 push	 ecx
  001dd	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  001e3	50		 push	 eax
  001e4	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 399  :             Button_Enable(GetDlgItem(hDlg, IDC_UP), enabledButInScan);

  001ea	8b 55 fc	 mov	 edx, DWORD PTR _enabledButInScan$[ebp]
  001ed	52		 push	 edx
  001ee	68 5b 07 00 00	 push	 1883			; 0000075bH
  001f3	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  001f6	50		 push	 eax
  001f7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  001fd	50		 push	 eax
  001fe	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 400  :             Button_Enable(GetDlgItem(hDlg, IDC_DOWN), enabledButInScan);

  00204	8b 4d fc	 mov	 ecx, DWORD PTR _enabledButInScan$[ebp]
  00207	51		 push	 ecx
  00208	68 e1 05 00 00	 push	 1505			; 000005e1H
  0020d	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00210	52		 push	 edx
  00211	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00217	50		 push	 eax
  00218	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 401  :             break;

  0021e	e9 34 02 00 00	 jmp	 $LN4@UpdateEnab
$LN2@UpdateEnab:

; 402  : 
; 403  :         case SCAN_MODE_CUSTOM_ORDER :
; 404  :             Button_Enable(GetDlgItem(hDlg, IDC_ADD), FALSE);

  00223	6a 00		 push	 0
  00225	68 79 05 00 00	 push	 1401			; 00000579H
  0022a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0022d	50		 push	 eax
  0022e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00234	50		 push	 eax
  00235	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 405  :             Button_Enable(GetDlgItem(hDlg, IDC_REMOVE), FALSE);

  0023b	6a 00		 push	 0
  0023d	68 e0 06 00 00	 push	 1760			; 000006e0H
  00242	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00245	51		 push	 ecx
  00246	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0024c	50		 push	 eax
  0024d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 406  : 
; 407  :             Button_Enable(GetDlgItem(hDlg, IDC_CUSTOMCHANNELORDER), bEnabled);

  00253	8b 55 0c	 mov	 edx, DWORD PTR _bEnabled$[ebp]
  00256	52		 push	 edx
  00257	68 ba 05 00 00	 push	 1466			; 000005baH
  0025c	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0025f	50		 push	 eax
  00260	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00266	50		 push	 eax
  00267	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 408  :             ComboBox_Enable(GetDlgItem(hDlg, IDC_COUNTRY), bEnabled);

  0026d	8b 4d 0c	 mov	 ecx, DWORD PTR _bEnabled$[ebp]
  00270	51		 push	 ecx
  00271	68 b7 05 00 00	 push	 1463			; 000005b7H
  00276	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00279	52		 push	 edx
  0027a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00280	50		 push	 eax
  00281	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 409  : 
; 410  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_MIN_FREQ), FALSE);

  00287	6a 00		 push	 0
  00289	68 f4 05 00 00	 push	 1524			; 000005f4H
  0028e	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00291	50		 push	 eax
  00292	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00298	50		 push	 eax
  00299	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 411  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_MAX_FREQ), FALSE);

  0029f	6a 00		 push	 0
  002a1	68 f3 05 00 00	 push	 1523			; 000005f3H
  002a6	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  002a9	51		 push	 ecx
  002aa	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  002b0	50		 push	 eax
  002b1	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 412  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_STEPS), FALSE);

  002b7	6a 00		 push	 0
  002b9	68 f5 05 00 00	 push	 1525			; 000005f5H
  002be	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  002c1	52		 push	 edx
  002c2	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  002c8	50		 push	 eax
  002c9	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 413  :             Button_Enable(GetDlgItem(hDlg, IDC_SCAN_AFC), FALSE);

  002cf	6a 00		 push	 0
  002d1	68 9a 05 00 00	 push	 1434			; 0000059aH
  002d6	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  002d9	50		 push	 eax
  002da	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  002e0	50		 push	 eax
  002e1	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 414  :             Button_Enable(GetDlgItem(hDlg, IDC_UP), FALSE);

  002e7	6a 00		 push	 0
  002e9	68 5b 07 00 00	 push	 1883			; 0000075bH
  002ee	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  002f1	51		 push	 ecx
  002f2	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  002f8	50		 push	 eax
  002f9	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 415  :             Button_Enable(GetDlgItem(hDlg, IDC_DOWN), FALSE);

  002ff	6a 00		 push	 0
  00301	68 e1 05 00 00	 push	 1505			; 000005e1H
  00306	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00309	52		 push	 edx
  0030a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00310	50		 push	 eax
  00311	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 416  :             break;

  00317	e9 3b 01 00 00	 jmp	 $LN4@UpdateEnab
$LN1@UpdateEnab:

; 417  : 
; 418  :         case  SCAN_MODE_FULL_FREQUENCY :
; 419  :             Button_Enable(GetDlgItem(hDlg, IDC_ADD), enabledButInScan);

  0031c	8b 45 fc	 mov	 eax, DWORD PTR _enabledButInScan$[ebp]
  0031f	50		 push	 eax
  00320	68 79 05 00 00	 push	 1401			; 00000579H
  00325	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00328	51		 push	 ecx
  00329	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0032f	50		 push	 eax
  00330	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 420  :             Button_Enable(GetDlgItem(hDlg, IDC_REMOVE), enabledButInScan);

  00336	8b 55 fc	 mov	 edx, DWORD PTR _enabledButInScan$[ebp]
  00339	52		 push	 edx
  0033a	68 e0 06 00 00	 push	 1760			; 000006e0H
  0033f	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00342	50		 push	 eax
  00343	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00349	50		 push	 eax
  0034a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 421  : 
; 422  :             Button_Enable(GetDlgItem(hDlg, IDC_CUSTOMCHANNELORDER), FALSE);

  00350	6a 00		 push	 0
  00352	68 ba 05 00 00	 push	 1466			; 000005baH
  00357	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0035a	51		 push	 ecx
  0035b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00361	50		 push	 eax
  00362	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 423  :             ComboBox_Enable(GetDlgItem(hDlg, IDC_COUNTRY), bEnabled);

  00368	8b 55 0c	 mov	 edx, DWORD PTR _bEnabled$[ebp]
  0036b	52		 push	 edx
  0036c	68 b7 05 00 00	 push	 1463			; 000005b7H
  00371	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00374	50		 push	 eax
  00375	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0037b	50		 push	 eax
  0037c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 424  : 
; 425  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_MIN_FREQ), enabledButInScan);

  00382	8b 4d fc	 mov	 ecx, DWORD PTR _enabledButInScan$[ebp]
  00385	51		 push	 ecx
  00386	68 f4 05 00 00	 push	 1524			; 000005f4H
  0038b	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0038e	52		 push	 edx
  0038f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00395	50		 push	 eax
  00396	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 426  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_MAX_FREQ), enabledButInScan);

  0039c	8b 45 fc	 mov	 eax, DWORD PTR _enabledButInScan$[ebp]
  0039f	50		 push	 eax
  003a0	68 f3 05 00 00	 push	 1523			; 000005f3H
  003a5	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  003a8	51		 push	 ecx
  003a9	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  003af	50		 push	 eax
  003b0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 427  :             Edit_Enable(GetDlgItem(hDlg, IDC_SCAN_STEPS), enabledButInScan);

  003b6	8b 55 fc	 mov	 edx, DWORD PTR _enabledButInScan$[ebp]
  003b9	52		 push	 edx
  003ba	68 f5 05 00 00	 push	 1525			; 000005f5H
  003bf	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  003c2	50		 push	 eax
  003c3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  003c9	50		 push	 eax
  003ca	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 428  :             Button_Enable(GetDlgItem(hDlg, IDC_SCAN_AFC), enabledButInScan);

  003d0	8b 4d fc	 mov	 ecx, DWORD PTR _enabledButInScan$[ebp]
  003d3	51		 push	 ecx
  003d4	68 9a 05 00 00	 push	 1434			; 0000059aH
  003d9	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  003dc	52		 push	 edx
  003dd	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  003e3	50		 push	 eax
  003e4	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 429  :             Button_Enable(GetDlgItem(hDlg, IDC_UP), enabledButInScan);

  003ea	8b 45 fc	 mov	 eax, DWORD PTR _enabledButInScan$[ebp]
  003ed	50		 push	 eax
  003ee	68 5b 07 00 00	 push	 1883			; 0000075bH
  003f3	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  003f6	51		 push	 ecx
  003f7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  003fd	50		 push	 eax
  003fe	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 430  :             Button_Enable(GetDlgItem(hDlg, IDC_DOWN), enabledButInScan);

  00404	8b 55 fc	 mov	 edx, DWORD PTR _enabledButInScan$[ebp]
  00407	52		 push	 edx
  00408	68 e1 05 00 00	 push	 1505			; 000005e1H
  0040d	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00410	50		 push	 eax
  00411	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00417	50		 push	 eax
  00418	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8

; 431  : 
; 432  :             //XXX->This is brutal and dirty and should be changed
; 433  :             Button_Enable(GetDlgItem(hDlg, IDC_SCAN_AFC), enabledButInScan && MyIsAFCSupported);

  0041e	83 7d fc 00	 cmp	 DWORD PTR _enabledButInScan$[ebp], 0
  00422	74 12		 je	 SHORT $LN10@UpdateEnab
  00424	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyIsAFCSupported@@3HA, 0 ; MyIsAFCSupported
  0042b	74 09		 je	 SHORT $LN10@UpdateEnab
  0042d	c7 45 f0 01 00
	00 00		 mov	 DWORD PTR tv293[ebp], 1
  00434	eb 07		 jmp	 SHORT $LN11@UpdateEnab
$LN10@UpdateEnab:
  00436	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR tv293[ebp], 0
$LN11@UpdateEnab:
  0043d	8b 4d f0	 mov	 ecx, DWORD PTR tv293[ebp]
  00440	51		 push	 ecx
  00441	68 9a 05 00 00	 push	 1434			; 0000059aH
  00446	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00449	52		 push	 edx
  0044a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00450	50		 push	 eax
  00451	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableWindow@8
$LN4@UpdateEnab:

; 434  :             break;
; 435  :     }
; 436  : 
; 437  :     MyInUpdate = FALSE;

  00457	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 438  : }

  00461	8b e5		 mov	 esp, ebp
  00463	5d		 pop	 ebp
  00464	c3		 ret	 0
?UpdateEnabledState@@YAXPAUHWND__@@H@Z ENDP		; UpdateEnabledState
_TEXT	ENDS
PUBLIC	__real@412e848000000000
PUBLIC	__$ArrayPad$
PUBLIC	?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z		; SetFrequencyEditBox
;	COMDAT __real@412e848000000000
CONST	SEGMENT
__real@412e848000000000 DQ 0412e848000000000r	; 1e+006
; Function compile flags: /Odtp
CONST	ENDS
;	COMDAT ?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z
_TEXT	SEGMENT
_sbuf$ = -520						; size = 512
__$ArrayPad$ = -4					; size = 4
_hDlg$ = 8						; size = 4
_Frequency$ = 12					; size = 4
?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z PROC		; SetFrequencyEditBox, COMDAT

; 211  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	81 ec 08 02 00
	00		 sub	 esp, 520		; 00000208H
  00009	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0000e	33 c5		 xor	 eax, ebp
  00010	89 45 fc	 mov	 DWORD PTR __$ArrayPad$[ebp], eax

; 212  :     TCHAR sbuf[256];
; 213  : 
; 214  :     _stprintf(sbuf, _T("%10.4lf"), (double)Frequency / 1000000.0);

  00013	db 45 0c	 fild	 DWORD PTR _Frequency$[ebp]
  00016	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@412e848000000000
  0001c	83 ec 08	 sub	 esp, 8
  0001f	dd 1c 24	 fstp	 QWORD PTR [esp]
  00022	68 00 00 00 00	 push	 OFFSET ??_C@_1BA@GNLKIIBN@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?$AA@
  00027	8d 85 f8 fd ff
	ff		 lea	 eax, DWORD PTR _sbuf$[ebp]
  0002d	50		 push	 eax
  0002e	e8 00 00 00 00	 call	 __swprintf
  00033	83 c4 10	 add	 esp, 16			; 00000010H

; 215  :     Edit_SetText(GetDlgItem(hDlg, IDC_FREQUENCY), sbuf);

  00036	8d 8d f8 fd ff
	ff		 lea	 ecx, DWORD PTR _sbuf$[ebp]
  0003c	51		 push	 ecx
  0003d	68 5d 06 00 00	 push	 1629			; 0000065dH
  00042	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00045	52		 push	 edx
  00046	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0004c	50		 push	 eax
  0004d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 216  : }

  00053	8b 4d fc	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  00056	33 cd		 xor	 ecx, ebp
  00058	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0005d	8b e5		 mov	 esp, ebp
  0005f	5d		 pop	 ebp
  00060	c3		 ret	 0
?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z ENDP		; SetFrequencyEditBox
_TEXT	ENDS
PUBLIC	?SelectedScanSteps@@YAKPAUHWND__@@@Z		; SelectedScanSteps
;	COMDAT ?sbuf@?1??SelectedScanSteps@@YAKPAUHWND__@@@Z@4PA_WA
_BSS	SEGMENT
?sbuf@?1??SelectedScanSteps@@YAKPAUHWND__@@@Z@4PA_WA DW 0100H DUP (?) ; `SelectedScanSteps'::`2'::sbuf
; Function compile flags: /Odtp
_BSS	ENDS
;	COMDAT ?SelectedScanSteps@@YAKPAUHWND__@@@Z
_TEXT	SEGMENT
_hDlg$ = 8						; size = 4
?SelectedScanSteps@@YAKPAUHWND__@@@Z PROC		; SelectedScanSteps, COMDAT

; 187  : {

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

; 188  :     static TCHAR sbuf[256];
; 189  :     sbuf[255] = '\0';

  00003	33 c0		 xor	 eax, eax
  00005	66 a3 fe 01 00
	00		 mov	 WORD PTR ?sbuf@?1??SelectedScanSteps@@YAKPAUHWND__@@@Z@4PA_WA+510, ax

; 190  :     Edit_GetText(GetDlgItem(hDlg, IDC_SCAN_STEPS), sbuf, 254);

  0000b	68 fe 00 00 00	 push	 254			; 000000feH
  00010	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??SelectedScanSteps@@YAKPAUHWND__@@@Z@4PA_WA
  00015	68 f5 05 00 00	 push	 1525			; 000005f5H
  0001a	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0001d	51		 push	 ecx
  0001e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00024	50		 push	 eax
  00025	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 191  :     return (DWORD)_tcstol(sbuf, '\0', 10);

  0002b	6a 0a		 push	 10			; 0000000aH
  0002d	6a 00		 push	 0
  0002f	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??SelectedScanSteps@@YAKPAUHWND__@@@Z@4PA_WA
  00034	e8 00 00 00 00	 call	 _wcstol
  00039	83 c4 0c	 add	 esp, 12			; 0000000cH

; 192  : }

  0003c	5d		 pop	 ebp
  0003d	c3		 ret	 0
?SelectedScanSteps@@YAKPAUHWND__@@@Z ENDP		; SelectedScanSteps
_TEXT	ENDS
PUBLIC	?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ; SelectedVideoFormat
; Function compile flags: /Odtp
;	COMDAT ?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z
_TEXT	SEGMENT
_Format$ = -4						; size = 4
_hDlg$ = 8						; size = 4
?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z PROC ; SelectedVideoFormat, COMDAT

; 176  : {

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

; 177  :     int Format = ComboBox_GetCurSel(GetDlgItem(hDlg, IDC_FORMAT)) - 1;

  00004	6a 00		 push	 0
  00006	6a 00		 push	 0
  00008	68 47 01 00 00	 push	 327			; 00000147H
  0000d	68 53 06 00 00	 push	 1619			; 00000653H
  00012	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00015	50		 push	 eax
  00016	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0001c	50		 push	 eax
  0001d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00023	83 e8 01	 sub	 eax, 1
  00026	89 45 fc	 mov	 DWORD PTR _Format$[ebp], eax

; 178  :     if(Format == -1)

  00029	83 7d fc ff	 cmp	 DWORD PTR _Format$[ebp], -1
  0002d	75 07		 jne	 SHORT $LN1@SelectedVi

; 179  :     {
; 180  :         Format = VIDEOFORMAT_LAST_TV;

  0002f	c7 45 fc 14 00
	00 00		 mov	 DWORD PTR _Format$[ebp], 20 ; 00000014H
$LN1@SelectedVi:

; 181  :     }
; 182  : 
; 183  :     return (eVideoFormat)Format;

  00036	8b 45 fc	 mov	 eax, DWORD PTR _Format$[ebp]

; 184  : }

  00039	8b e5		 mov	 esp, ebp
  0003b	5d		 pop	 ebp
  0003c	c3		 ret	 0
?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ENDP ; SelectedVideoFormat
PUBLIC	?GetCurrentChannelNumber@@YAHPAUHWND__@@@Z	; GetCurrentChannelNumber
; Function compile flags: /Odtp
;	COMDAT ?GetCurrentChannelNumber@@YAHPAUHWND__@@@Z
_TEXT	SEGMENT
_pChannel$144277 = -12					; size = 4
_ChannelIndex$ = -8					; size = 4
_Channel$ = -4						; size = 4
_hDlg$ = 8						; size = 4
?GetCurrentChannelNumber@@YAHPAUHWND__@@@Z PROC		; GetCurrentChannelNumber, COMDAT

; 804  : {

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

; 805  :     int Channel(0);

  00006	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _Channel$[ebp], 0

; 806  :     int ChannelIndex = ComboBox_GetCurSel(GetDlgItem(hDlg, IDC_CHANNEL));

  0000d	6a 00		 push	 0
  0000f	6a 00		 push	 0
  00011	68 47 01 00 00	 push	 327			; 00000147H
  00016	68 98 05 00 00	 push	 1432			; 00000598H
  0001b	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0001e	50		 push	 eax
  0001f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00025	50		 push	 eax
  00026	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0002c	89 45 f8	 mov	 DWORD PTR _ChannelIndex$[ebp], eax

; 807  :     if(ChannelIndex != -1)

  0002f	83 7d f8 ff	 cmp	 DWORD PTR _ChannelIndex$[ebp], -1
  00033	74 35		 je	 SHORT $LN2@GetCurrent@4

; 808  :     {
; 809  :         CChannel* pChannel = (CChannel*)ComboBox_GetItemData(GetDlgItem(hDlg, IDC_CHANNEL), ChannelIndex);

  00035	6a 00		 push	 0
  00037	8b 4d f8	 mov	 ecx, DWORD PTR _ChannelIndex$[ebp]
  0003a	51		 push	 ecx
  0003b	68 50 01 00 00	 push	 336			; 00000150H
  00040	68 98 05 00 00	 push	 1432			; 00000598H
  00045	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00048	52		 push	 edx
  00049	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0004f	50		 push	 eax
  00050	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00056	89 45 f4	 mov	 DWORD PTR _pChannel$144277[ebp], eax

; 810  :         if(pChannel != NULL)

  00059	83 7d f4 00	 cmp	 DWORD PTR _pChannel$144277[ebp], 0
  0005d	74 0b		 je	 SHORT $LN2@GetCurrent@4

; 811  :         {
; 812  :             Channel = pChannel->GetChannelNumber();

  0005f	8b 4d f4	 mov	 ecx, DWORD PTR _pChannel$144277[ebp]
  00062	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  00067	89 45 fc	 mov	 DWORD PTR _Channel$[ebp], eax
$LN2@GetCurrent@4:

; 813  :         }
; 814  :     }
; 815  :     return Channel;

  0006a	8b 45 fc	 mov	 eax, DWORD PTR _Channel$[ebp]

; 816  : }

  0006d	8b e5		 mov	 esp, ebp
  0006f	5d		 pop	 ebp
  00070	c3		 ret	 0
?GetCurrentChannelNumber@@YAHPAUHWND__@@@Z ENDP		; GetCurrentChannelNumber
_TEXT	ENDS
PUBLIC	?BeginScan@@YAXPAUHWND__@@@Z			; BeginScan
;	COMDAT ?sbuf@?1??BeginScan@@YAXPAUHWND__@@@Z@4PA_WA
_BSS	SEGMENT
?sbuf@?1??BeginScan@@YAXPAUHWND__@@@Z@4PA_WA DW 0100H DUP (?) ; `BeginScan'::`2'::sbuf
; Function compile flags: /Odtp
_BSS	ENDS
;	COMDAT ?BeginScan@@YAXPAUHWND__@@@Z
_TEXT	SEGMENT
tv176 = -44						; size = 8
tv174 = -36						; size = 4
tv171 = -30						; size = 2
tv165 = -28						; size = 8
tv163 = -20						; size = 4
tv160 = -14						; size = 2
tv66 = -12						; size = 4
_maxFrequency$144257 = -8				; size = 4
_minFrequency$144255 = -4				; size = 4
_hDlg$ = 8						; size = 4
?BeginScan@@YAXPAUHWND__@@@Z PROC			; BeginScan, COMDAT

; 750  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 2c	 sub	 esp, 44			; 0000002cH

; 751  :     static TCHAR sbuf[256];
; 752  : 
; 753  :     _ASSERTE(FALSE == MyInScan);
; 754  :     MyInScan = TRUE;

  00006	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInScan@@3HA, 1 ; MyInScan

; 755  : 
; 756  :     UpdateEnabledState(hDlg, TRUE);

  00010	6a 01		 push	 1
  00012	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00015	50		 push	 eax
  00016	e8 00 00 00 00	 call	 ?UpdateEnabledState@@YAXPAUHWND__@@H@Z ; UpdateEnabledState
  0001b	83 c4 08	 add	 esp, 8

; 757  : 
; 758  :     CurrentProgram = 0;

  0001e	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, 0 ; CurrentProgram

; 759  :     Button_SetText(GetDlgItem(hDlg, IDC_SCAN), _T("Abort"));

  00028	68 00 00 00 00	 push	 OFFSET ??_C@_1M@FBICDPFE@?$AAA?$AAb?$AAo?$AAr?$AAt?$AA?$AA@
  0002d	68 f3 06 00 00	 push	 1779			; 000006f3H
  00032	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00035	51		 push	 ecx
  00036	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0003c	50		 push	 eax
  0003d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 760  :     switch (MyScanMode)

  00043	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?MyScanMode@@3W4eScanMode@@A ; MyScanMode
  00049	89 55 f4	 mov	 DWORD PTR tv66[ebp], edx
  0004c	83 7d f4 00	 cmp	 DWORD PTR tv66[ebp], 0
  00050	74 2d		 je	 SHORT $LN2@BeginScan
  00052	83 7d f4 01	 cmp	 DWORD PTR tv66[ebp], 1
  00056	74 0b		 je	 SHORT $LN3@BeginScan
  00058	83 7d f4 02	 cmp	 DWORD PTR tv66[ebp], 2
  0005c	74 3e		 je	 SHORT $LN1@BeginScan
  0005e	e9 ff 00 00 00	 jmp	 $LN4@BeginScan
$LN3@BeginScan:

; 761  :     {
; 762  :         case SCAN_MODE_CUSTOM_ORDER :
; 763  :             PostMessage(hDlg, WM_SCAN_CUSTOM_ORDER, 0, CountryCode);

  00063	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CountryCode@@3HA ; CountryCode
  00068	50		 push	 eax
  00069	6a 00		 push	 0
  0006b	68 03 0b 00 00	 push	 2819			; 00000b03H
  00070	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00073	51		 push	 ecx
  00074	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 764  :             break;

  0007a	e9 e3 00 00 00	 jmp	 $LN4@BeginScan
$LN2@BeginScan:

; 765  : 
; 766  :         case SCAN_MODE_PRESETS :
; 767  :             PostMessage(hDlg, WM_SCAN_PRESET_FREQ, 0, CountryCode);

  0007f	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CountryCode@@3HA ; CountryCode
  00085	52		 push	 edx
  00086	6a 00		 push	 0
  00088	68 01 0b 00 00	 push	 2817			; 00000b01H
  0008d	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00090	50		 push	 eax
  00091	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 768  :             break;

  00097	e9 c6 00 00 00	 jmp	 $LN4@BeginScan
$LN1@BeginScan:

; 769  : 
; 770  :         case SCAN_MODE_FULL_FREQUENCY :
; 771  :             sbuf[255] = '\0';

  0009c	33 c9		 xor	 ecx, ecx
  0009e	66 89 0d fe 01
	00 00		 mov	 WORD PTR ?sbuf@?1??BeginScan@@YAXPAUHWND__@@@Z@4PA_WA+510, cx

; 772  :             Edit_GetText(GetDlgItem(hDlg, IDC_SCAN_MIN_FREQ), sbuf, 254);

  000a5	68 fe 00 00 00	 push	 254			; 000000feH
  000aa	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??BeginScan@@YAXPAUHWND__@@@Z@4PA_WA
  000af	68 f4 05 00 00	 push	 1524			; 000005f4H
  000b4	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  000b7	52		 push	 edx
  000b8	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000be	50		 push	 eax
  000bf	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 773  :             DWORD minFrequency = (DWORD)(_tcstod(sbuf, '\0') * 1000000.0);

  000c5	6a 00		 push	 0
  000c7	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??BeginScan@@YAXPAUHWND__@@@Z@4PA_WA
  000cc	e8 00 00 00 00	 call	 _wcstod
  000d1	83 c4 08	 add	 esp, 8
  000d4	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  000da	d9 7d f2	 fnstcw	 WORD PTR tv160[ebp]
  000dd	0f b7 45 f2	 movzx	 eax, WORD PTR tv160[ebp]
  000e1	0d 00 0c 00 00	 or	 eax, 3072		; 00000c00H
  000e6	89 45 ec	 mov	 DWORD PTR tv163[ebp], eax
  000e9	d9 6d ec	 fldcw	 WORD PTR tv163[ebp]
  000ec	df 7d e4	 fistp	 QWORD PTR tv165[ebp]
  000ef	d9 6d f2	 fldcw	 WORD PTR tv160[ebp]
  000f2	8b 45 e4	 mov	 eax, DWORD PTR tv165[ebp]
  000f5	89 45 fc	 mov	 DWORD PTR _minFrequency$144255[ebp], eax

; 774  : 
; 775  :             Edit_GetText(GetDlgItem(hDlg, IDC_SCAN_MAX_FREQ), sbuf, 254);

  000f8	68 fe 00 00 00	 push	 254			; 000000feH
  000fd	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??BeginScan@@YAXPAUHWND__@@@Z@4PA_WA
  00102	68 f3 05 00 00	 push	 1523			; 000005f3H
  00107	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0010a	51		 push	 ecx
  0010b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00111	50		 push	 eax
  00112	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 776  :             DWORD maxFrequency = (DWORD)(_tcstod(sbuf, '\0') * 1000000.0);

  00118	6a 00		 push	 0
  0011a	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??BeginScan@@YAXPAUHWND__@@@Z@4PA_WA
  0011f	e8 00 00 00 00	 call	 _wcstod
  00124	83 c4 08	 add	 esp, 8
  00127	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  0012d	d9 7d e2	 fnstcw	 WORD PTR tv171[ebp]
  00130	0f b7 45 e2	 movzx	 eax, WORD PTR tv171[ebp]
  00134	0d 00 0c 00 00	 or	 eax, 3072		; 00000c00H
  00139	89 45 dc	 mov	 DWORD PTR tv174[ebp], eax
  0013c	d9 6d dc	 fldcw	 WORD PTR tv174[ebp]
  0013f	df 7d d4	 fistp	 QWORD PTR tv176[ebp]
  00142	d9 6d e2	 fldcw	 WORD PTR tv171[ebp]
  00145	8b 55 d4	 mov	 edx, DWORD PTR tv176[ebp]
  00148	89 55 f8	 mov	 DWORD PTR _maxFrequency$144257[ebp], edx

; 777  : 
; 778  :             PostMessage(hDlg, WM_SCAN_AUTO, minFrequency, maxFrequency);

  0014b	8b 45 f8	 mov	 eax, DWORD PTR _maxFrequency$144257[ebp]
  0014e	50		 push	 eax
  0014f	8b 4d fc	 mov	 ecx, DWORD PTR _minFrequency$144255[ebp]
  00152	51		 push	 ecx
  00153	68 02 0b 00 00	 push	 2818			; 00000b02H
  00158	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0015b	52		 push	 edx
  0015c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16
$LN4@BeginScan:

; 779  :             break;
; 780  :     }
; 781  :     UpdateEnabledState(hDlg, TRUE);

  00162	6a 01		 push	 1
  00164	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00167	50		 push	 eax
  00168	e8 00 00 00 00	 call	 ?UpdateEnabledState@@YAXPAUHWND__@@H@Z ; UpdateEnabledState
  0016d	83 c4 08	 add	 esp, 8

; 782  : }

  00170	8b e5		 mov	 esp, ebp
  00172	5d		 pop	 ebp
  00173	c3		 ret	 0
?BeginScan@@YAXPAUHWND__@@@Z ENDP			; BeginScan
PUBLIC	?Channels_SetMenu@@YAXPAUHMENU__@@@Z		; Channels_SetMenu
; Function compile flags: /Odtp
;	COMDAT ?Channels_SetMenu@@YAXPAUHMENU__@@@Z
_TEXT	SEGMENT
tv153 = -60						; size = 4
tv142 = -56						; size = 4
tv136 = -52						; size = 4
tv130 = -48						; size = 4
tv92 = -44						; size = 4
tv83 = -40						; size = 4
tv78 = -36						; size = 4
tv74 = -32						; size = 4
_channelIndex$144841 = -28				; size = 4
_j$ = -24						; size = 4
_bInTunerMode$ = -20					; size = 4
_bHasTuner$ = -16					; size = 4
_hMenuChannels$ = -12					; size = 4
_NDisabledChannels$ = -8				; size = 4
_hSubMenu$ = -4						; size = 4
_hMenu$ = 8						; size = 4
?Channels_SetMenu@@YAXPAUHMENU__@@@Z PROC		; Channels_SetMenu, COMDAT

; 1726 : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 3c	 sub	 esp, 60			; 0000003cH

; 1727 :     int NDisabledChannels = 0;

  00006	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR _NDisabledChannels$[ebp], 0

; 1728 :     HMENU hMenuChannels(GetChannelsSubmenu());

  0000d	e8 00 00 00 00	 call	 ?GetChannelsSubmenu@@YAPAUHMENU__@@XZ ; GetChannelsSubmenu
  00012	89 45 f4	 mov	 DWORD PTR _hMenuChannels$[ebp], eax

; 1729 :     int j = 0;

  00015	c7 45 e8 00 00
	00 00		 mov	 DWORD PTR _j$[ebp], 0

; 1730 :     if(hMenuChannels == NULL) return;

  0001c	83 7d f4 00	 cmp	 DWORD PTR _hMenuChannels$[ebp], 0
  00020	75 05		 jne	 SHORT $LN10@Channels_S@12
  00022	e9 a2 02 00 00	 jmp	 $LN11@Channels_S@12
$LN10@Channels_S@12:

; 1731 : 
; 1732 :     if (InitialNbMenuItems == -1)

  00027	83 3d 00 00 00
	00 ff		 cmp	 DWORD PTR _InitialNbMenuItems, -1
  0002e	75 0f		 jne	 SHORT $LN9@Channels_S@12

; 1733 :     {
; 1734 :         InitialNbMenuItems = GetMenuItemCount(hMenuChannels);

  00030	8b 45 f4	 mov	 eax, DWORD PTR _hMenuChannels$[ebp]
  00033	50		 push	 eax
  00034	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetMenuItemCount@4
  0003a	a3 00 00 00 00	 mov	 DWORD PTR _InitialNbMenuItems, eax
$LN9@Channels_S@12:

; 1735 :     }
; 1736 : 
; 1737 :     BOOL bHasTuner = Providers_GetCurrentSource() ? Providers_GetCurrentSource()->HasTuner() : FALSE;

  0003f	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00044	85 c0		 test	 eax, eax
  00046	74 11		 je	 SHORT $LN13@Channels_S@12
  00048	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  0004d	8b c8		 mov	 ecx, eax
  0004f	e8 00 00 00 00	 call	 ?HasTuner@CSource@@QAEHXZ ; CSource::HasTuner
  00054	89 45 e0	 mov	 DWORD PTR tv74[ebp], eax
  00057	eb 07		 jmp	 SHORT $LN14@Channels_S@12
$LN13@Channels_S@12:
  00059	c7 45 e0 00 00
	00 00		 mov	 DWORD PTR tv74[ebp], 0
$LN14@Channels_S@12:
  00060	8b 4d e0	 mov	 ecx, DWORD PTR tv74[ebp]
  00063	89 4d f0	 mov	 DWORD PTR _bHasTuner$[ebp], ecx

; 1738 :     BOOL bInTunerMode = Providers_GetCurrentSource() ? Providers_GetCurrentSource()->IsInTunerMode() : FALSE;

  00066	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  0006b	85 c0		 test	 eax, eax
  0006d	74 1a		 je	 SHORT $LN15@Channels_S@12
  0006f	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00074	89 45 dc	 mov	 DWORD PTR tv78[ebp], eax
  00077	8b 55 dc	 mov	 edx, DWORD PTR tv78[ebp]
  0007a	8b 02		 mov	 eax, DWORD PTR [edx]
  0007c	8b 4d dc	 mov	 ecx, DWORD PTR tv78[ebp]
  0007f	8b 50 68	 mov	 edx, DWORD PTR [eax+104]
  00082	ff d2		 call	 edx
  00084	89 45 d8	 mov	 DWORD PTR tv83[ebp], eax
  00087	eb 07		 jmp	 SHORT $LN16@Channels_S@12
$LN15@Channels_S@12:
  00089	c7 45 d8 00 00
	00 00		 mov	 DWORD PTR tv83[ebp], 0
$LN16@Channels_S@12:
  00090	8b 45 d8	 mov	 eax, DWORD PTR tv83[ebp]
  00093	89 45 ec	 mov	 DWORD PTR _bInTunerMode$[ebp], eax

; 1739 : 
; 1740 :     CheckMenuItemBool(hMenuChannels, IDM_CHANNEL_PREVIEW, pMultiFrames && (pMultiFrames->GetMode() == PREVIEW_CHANNELS) && pMultiFrames->IsActive());

  00096	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?pMultiFrames@@3PAVCMultiFrames@@A, 0 ; pMultiFrames
  0009d	74 27		 je	 SHORT $LN17@Channels_S@12
  0009f	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?pMultiFrames@@3PAVCMultiFrames@@A ; pMultiFrames
  000a5	e8 00 00 00 00	 call	 ?GetMode@CMultiFrames@@QAE?AW4eMultiFramesMode@@XZ ; CMultiFrames::GetMode
  000aa	85 c0		 test	 eax, eax
  000ac	75 18		 jne	 SHORT $LN17@Channels_S@12
  000ae	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?pMultiFrames@@3PAVCMultiFrames@@A ; pMultiFrames
  000b4	e8 00 00 00 00	 call	 ?IsActive@CMultiFrames@@QAEHXZ ; CMultiFrames::IsActive
  000b9	85 c0		 test	 eax, eax
  000bb	74 09		 je	 SHORT $LN17@Channels_S@12
  000bd	c7 45 d4 08 00
	00 00		 mov	 DWORD PTR tv92[ebp], 8
  000c4	eb 07		 jmp	 SHORT $LN18@Channels_S@12
$LN17@Channels_S@12:
  000c6	c7 45 d4 00 00
	00 00		 mov	 DWORD PTR tv92[ebp], 0
$LN18@Channels_S@12:
  000cd	8b 4d d4	 mov	 ecx, DWORD PTR tv92[ebp]
  000d0	51		 push	 ecx
  000d1	68 be 80 00 00	 push	 32958			; 000080beH
  000d6	8b 55 f4	 mov	 edx, DWORD PTR _hMenuChannels$[ebp]
  000d9	52		 push	 edx
  000da	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__CheckMenuItem@12

; 1741 : 
; 1742 :     EnableMenuItem(hMenuChannels, IDM_CHANNELPLUS, bHasTuner && bInTunerMode?MF_ENABLED:MF_GRAYED);

  000e0	83 7d f0 00	 cmp	 DWORD PTR _bHasTuner$[ebp], 0
  000e4	74 0f		 je	 SHORT $LN19@Channels_S@12
  000e6	83 7d ec 00	 cmp	 DWORD PTR _bInTunerMode$[ebp], 0
  000ea	74 09		 je	 SHORT $LN19@Channels_S@12
  000ec	c7 45 d0 00 00
	00 00		 mov	 DWORD PTR tv130[ebp], 0
  000f3	eb 07		 jmp	 SHORT $LN20@Channels_S@12
$LN19@Channels_S@12:
  000f5	c7 45 d0 01 00
	00 00		 mov	 DWORD PTR tv130[ebp], 1
$LN20@Channels_S@12:
  000fc	8b 45 d0	 mov	 eax, DWORD PTR tv130[ebp]
  000ff	50		 push	 eax
  00100	68 0a 01 00 00	 push	 266			; 0000010aH
  00105	8b 4d f4	 mov	 ecx, DWORD PTR _hMenuChannels$[ebp]
  00108	51		 push	 ecx
  00109	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableMenuItem@12

; 1743 :     EnableMenuItem(hMenuChannels, IDM_CHANNELMINUS, bHasTuner && bInTunerMode?MF_ENABLED:MF_GRAYED);

  0010f	83 7d f0 00	 cmp	 DWORD PTR _bHasTuner$[ebp], 0
  00113	74 0f		 je	 SHORT $LN21@Channels_S@12
  00115	83 7d ec 00	 cmp	 DWORD PTR _bInTunerMode$[ebp], 0
  00119	74 09		 je	 SHORT $LN21@Channels_S@12
  0011b	c7 45 cc 00 00
	00 00		 mov	 DWORD PTR tv136[ebp], 0
  00122	eb 07		 jmp	 SHORT $LN22@Channels_S@12
$LN21@Channels_S@12:
  00124	c7 45 cc 01 00
	00 00		 mov	 DWORD PTR tv136[ebp], 1
$LN22@Channels_S@12:
  0012b	8b 55 cc	 mov	 edx, DWORD PTR tv136[ebp]
  0012e	52		 push	 edx
  0012f	68 0b 01 00 00	 push	 267			; 0000010bH
  00134	8b 45 f4	 mov	 eax, DWORD PTR _hMenuChannels$[ebp]
  00137	50		 push	 eax
  00138	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableMenuItem@12

; 1744 :     EnableMenuItem(hMenuChannels, IDM_CHANNEL_PREVIOUS, bHasTuner && bInTunerMode?MF_ENABLED:MF_GRAYED);

  0013e	83 7d f0 00	 cmp	 DWORD PTR _bHasTuner$[ebp], 0
  00142	74 0f		 je	 SHORT $LN23@Channels_S@12
  00144	83 7d ec 00	 cmp	 DWORD PTR _bInTunerMode$[ebp], 0
  00148	74 09		 je	 SHORT $LN23@Channels_S@12
  0014a	c7 45 c8 00 00
	00 00		 mov	 DWORD PTR tv142[ebp], 0
  00151	eb 07		 jmp	 SHORT $LN24@Channels_S@12
$LN23@Channels_S@12:
  00153	c7 45 c8 01 00
	00 00		 mov	 DWORD PTR tv142[ebp], 1
$LN24@Channels_S@12:
  0015a	8b 4d c8	 mov	 ecx, DWORD PTR tv142[ebp]
  0015d	51		 push	 ecx
  0015e	68 2d 03 00 00	 push	 813			; 0000032dH
  00163	8b 55 f4	 mov	 edx, DWORD PTR _hMenuChannels$[ebp]
  00166	52		 push	 edx
  00167	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableMenuItem@12

; 1745 :     EnableMenuItem(hMenuChannels, IDM_CHANNEL_LIST, bHasTuner?MF_ENABLED:MF_GRAYED);

  0016d	33 c0		 xor	 eax, eax
  0016f	83 7d f0 00	 cmp	 DWORD PTR _bHasTuner$[ebp], 0
  00173	0f 94 c0	 sete	 al
  00176	50		 push	 eax
  00177	68 f2 00 00 00	 push	 242			; 000000f2H
  0017c	8b 4d f4	 mov	 ecx, DWORD PTR _hMenuChannels$[ebp]
  0017f	51		 push	 ecx
  00180	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableMenuItem@12

; 1746 :     EnableMenuItem(hMenuChannels, IDM_CHANNEL_PREVIEW, bHasTuner && bInTunerMode?MF_ENABLED:MF_GRAYED);

  00186	83 7d f0 00	 cmp	 DWORD PTR _bHasTuner$[ebp], 0
  0018a	74 0f		 je	 SHORT $LN25@Channels_S@12
  0018c	83 7d ec 00	 cmp	 DWORD PTR _bInTunerMode$[ebp], 0
  00190	74 09		 je	 SHORT $LN25@Channels_S@12
  00192	c7 45 c4 00 00
	00 00		 mov	 DWORD PTR tv153[ebp], 0
  00199	eb 07		 jmp	 SHORT $LN26@Channels_S@12
$LN25@Channels_S@12:
  0019b	c7 45 c4 01 00
	00 00		 mov	 DWORD PTR tv153[ebp], 1
$LN26@Channels_S@12:
  001a2	8b 55 c4	 mov	 edx, DWORD PTR tv153[ebp]
  001a5	52		 push	 edx
  001a6	68 be 80 00 00	 push	 32958			; 000080beH
  001ab	8b 45 f4	 mov	 eax, DWORD PTR _hMenuChannels$[ebp]
  001ae	50		 push	 eax
  001af	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableMenuItem@12

; 1747 : 
; 1748 :     for (int channelIndex = 0; channelIndex < MyChannels.GetSize() && (j < MAX_CHANNELS); channelIndex++)

  001b5	c7 45 e4 00 00
	00 00		 mov	 DWORD PTR _channelIndex$144841[ebp], 0
  001bc	eb 09		 jmp	 SHORT $LN8@Channels_S@12
$LN7@Channels_S@12:
  001be	8b 4d e4	 mov	 ecx, DWORD PTR _channelIndex$144841[ebp]
  001c1	83 c1 01	 add	 ecx, 1
  001c4	89 4d e4	 mov	 DWORD PTR _channelIndex$144841[ebp], ecx
$LN8@Channels_S@12:
  001c7	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  001cc	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  001d1	39 45 e4	 cmp	 DWORD PTR _channelIndex$144841[ebp], eax
  001d4	0f 8d 93 00 00
	00		 jge	 $LN6@Channels_S@12
  001da	81 7d e8 ff 00
	00 00		 cmp	 DWORD PTR _j$[ebp], 255	; 000000ffH
  001e1	0f 8d 86 00 00
	00		 jge	 $LN6@Channels_S@12

; 1749 :     {
; 1750 :         if ((MyChannels.GetChannel(channelIndex)->GetFrequency() != 0) && MyChannels.GetChannel(channelIndex)->IsActive())

  001e7	8b 55 e4	 mov	 edx, DWORD PTR _channelIndex$144841[ebp]
  001ea	52		 push	 edx
  001eb	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  001f0	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  001f5	8b c8		 mov	 ecx, eax
  001f7	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  001fc	85 c0		 test	 eax, eax
  001fe	74 68		 je	 SHORT $LN5@Channels_S@12
  00200	8b 45 e4	 mov	 eax, DWORD PTR _channelIndex$144841[ebp]
  00203	50		 push	 eax
  00204	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00209	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0020e	8b c8		 mov	 ecx, eax
  00210	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  00215	85 c0		 test	 eax, eax
  00217	74 4f		 je	 SHORT $LN5@Channels_S@12

; 1751 :         {
; 1752 :             EnableMenuItem(hMenuChannels, IDM_CHANNEL_SELECT + j, bHasTuner ? MF_ENABLED : MF_GRAYED);

  00219	33 c9		 xor	 ecx, ecx
  0021b	83 7d f0 00	 cmp	 DWORD PTR _bHasTuner$[ebp], 0
  0021f	0f 94 c1	 sete	 cl
  00222	51		 push	 ecx
  00223	8b 55 e8	 mov	 edx, DWORD PTR _j$[ebp]
  00226	81 c2 63 06 00
	00		 add	 edx, 1635		; 00000663H
  0022c	52		 push	 edx
  0022d	8b 45 f4	 mov	 eax, DWORD PTR _hMenuChannels$[ebp]
  00230	50		 push	 eax
  00231	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EnableMenuItem@12

; 1753 :             CheckMenuItem(hMenuChannels, IDM_CHANNEL_SELECT + j, (CurrentProgram == channelIndex) ? MF_CHECKED : MF_UNCHECKED);

  00237	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0023d	2b 4d e4	 sub	 ecx, DWORD PTR _channelIndex$144841[ebp]
  00240	f7 d9		 neg	 ecx
  00242	1b c9		 sbb	 ecx, ecx
  00244	83 e1 f8	 and	 ecx, -8			; fffffff8H
  00247	83 c1 08	 add	 ecx, 8
  0024a	51		 push	 ecx
  0024b	8b 55 e8	 mov	 edx, DWORD PTR _j$[ebp]
  0024e	81 c2 63 06 00
	00		 add	 edx, 1635		; 00000663H
  00254	52		 push	 edx
  00255	8b 45 f4	 mov	 eax, DWORD PTR _hMenuChannels$[ebp]
  00258	50		 push	 eax
  00259	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__CheckMenuItem@12

; 1754 :             j++;

  0025f	8b 4d e8	 mov	 ecx, DWORD PTR _j$[ebp]
  00262	83 c1 01	 add	 ecx, 1
  00265	89 4d e8	 mov	 DWORD PTR _j$[ebp], ecx
$LN5@Channels_S@12:

; 1755 :         }
; 1756 :     }

  00268	e9 51 ff ff ff	 jmp	 $LN7@Channels_S@12
$LN6@Channels_S@12:

; 1757 : 
; 1758 :     // Hide the menu _T("Channels") from the menu bar
; 1759 :     // when the source has no tuner or when the tuner
; 1760 :     // is not the selected input
; 1761 :     HMENU hSubMenu = GetSubMenu(hMenu, 2);

  0026d	6a 02		 push	 2
  0026f	8b 55 08	 mov	 edx, DWORD PTR _hMenu$[ebp]
  00272	52		 push	 edx
  00273	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetSubMenu@8
  00279	89 45 fc	 mov	 DWORD PTR _hSubMenu$[ebp], eax

; 1762 :     if (hSubMenu != hMenuChannels)

  0027c	8b 45 fc	 mov	 eax, DWORD PTR _hSubMenu$[ebp]
  0027f	3b 45 f4	 cmp	 eax, DWORD PTR _hMenuChannels$[ebp]
  00282	74 45		 je	 SHORT $LN11@Channels_S@12

; 1763 :     {
; 1764 :         if (!bHasTuner || !bInTunerMode)

  00284	83 7d f0 00	 cmp	 DWORD PTR _bHasTuner$[ebp], 0
  00288	74 06		 je	 SHORT $LN2@Channels_S@12
  0028a	83 7d ec 00	 cmp	 DWORD PTR _bInTunerMode$[ebp], 0
  0028e	75 13		 jne	 SHORT $LN3@Channels_S@12
$LN2@Channels_S@12:

; 1765 :         {
; 1766 :             RemoveMenu(hMenu, 2, MF_BYPOSITION);

  00290	68 00 04 00 00	 push	 1024			; 00000400H
  00295	6a 02		 push	 2
  00297	8b 4d 08	 mov	 ecx, DWORD PTR _hMenu$[ebp]
  0029a	51		 push	 ecx
  0029b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__RemoveMenu@12

; 1767 :         }
; 1768 :         else

  002a1	eb 1a		 jmp	 SHORT $LN1@Channels_S@12
$LN3@Channels_S@12:

; 1769 :         {
; 1770 :             InsertMenu(hMenu, 2, MF_BYPOSITION | MF_POPUP | MF_STRING, (UINT)hMenuChannels, _T("&Channels"));

  002a3	68 00 00 00 00	 push	 OFFSET ??_C@_1BE@PFIEJNGA@?$AA?$CG?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
  002a8	8b 55 f4	 mov	 edx, DWORD PTR _hMenuChannels$[ebp]
  002ab	52		 push	 edx
  002ac	68 10 04 00 00	 push	 1040			; 00000410H
  002b1	6a 02		 push	 2
  002b3	8b 45 08	 mov	 eax, DWORD PTR _hMenu$[ebp]
  002b6	50		 push	 eax
  002b7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__InsertMenuW@20
$LN1@Channels_S@12:

; 1771 :         }
; 1772 :         RedrawMenuBar(hMenu);

  002bd	8b 4d 08	 mov	 ecx, DWORD PTR _hMenu$[ebp]
  002c0	51		 push	 ecx
  002c1	e8 00 00 00 00	 call	 ?RedrawMenuBar@@YAXPAUHMENU__@@@Z ; RedrawMenuBar
  002c6	83 c4 04	 add	 esp, 4
$LN11@Channels_S@12:

; 1773 :     }
; 1774 : }

  002c9	8b e5		 mov	 esp, ebp
  002cb	5d		 pop	 ebp
  002cc	c3		 ret	 0
?Channels_SetMenu@@YAXPAUHMENU__@@@Z ENDP		; Channels_SetMenu
_TEXT	ENDS
PUBLIC	?RefreshChannelList@@YAXPAUHWND__@@H@Z		; RefreshChannelList
;	COMDAT ?sbuf@?1??RefreshChannelList@@YAXPAUHWND__@@H@Z@4PA_WA
_BSS	SEGMENT
?sbuf@?1??RefreshChannelList@@YAXPAUHWND__@@H@Z@4PA_WA DW 0100H DUP (?) ; `RefreshChannelList'::`2'::sbuf
; Function compile flags: /Odtp
_BSS	ENDS
;	COMDAT ?RefreshChannelList@@YAXPAUHWND__@@H@Z
_TEXT	SEGMENT
_channel$143970 = -20					; size = 4
_insertAt$143971 = -16					; size = 4
_i$143966 = -12						; size = 4
_channels$ = -8						; size = 4
_Index$ = -4						; size = 4
_hDlg$ = 8						; size = 4
_iCountryCode$ = 12					; size = 4
?RefreshChannelList@@YAXPAUHWND__@@H@Z PROC		; RefreshChannelList, COMDAT

; 329  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 14	 sub	 esp, 20			; 00000014H

; 330  :     static TCHAR sbuf[256];
; 331  :     MyInUpdate = TRUE;

  00006	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 332  : 
; 333  :     ComboBox_ResetContent(GetDlgItem(hDlg, IDC_CHANNEL));

  00010	6a 00		 push	 0
  00012	6a 00		 push	 0
  00014	68 4b 01 00 00	 push	 331			; 0000014bH
  00019	68 98 05 00 00	 push	 1432			; 00000598H
  0001e	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00021	50		 push	 eax
  00022	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00028	50		 push	 eax
  00029	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 334  : 
; 335  :     int Index = ComboBox_AddString(GetDlgItem(hDlg, IDC_CHANNEL), _T("None"));

  0002f	68 00 00 00 00	 push	 OFFSET ??_C@_19KLMLHLJG@?$AAN?$AAo?$AAn?$AAe?$AA?$AA@
  00034	6a 00		 push	 0
  00036	68 43 01 00 00	 push	 323			; 00000143H
  0003b	68 98 05 00 00	 push	 1432			; 00000598H
  00040	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00043	51		 push	 ecx
  00044	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0004a	50		 push	 eax
  0004b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00051	89 45 fc	 mov	 DWORD PTR _Index$[ebp], eax

; 336  :     ComboBox_SetItemData(GetDlgItem(hDlg, IDC_CHANNEL), Index, 0);

  00054	6a 00		 push	 0
  00056	8b 55 fc	 mov	 edx, DWORD PTR _Index$[ebp]
  00059	52		 push	 edx
  0005a	68 51 01 00 00	 push	 337			; 00000151H
  0005f	68 98 05 00 00	 push	 1432			; 00000598H
  00064	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00067	50		 push	 eax
  00068	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0006e	50		 push	 eax
  0006f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 337  : 
; 338  :     const CCountryChannels* channels = MyCountries.GetChannels(iCountryCode);

  00075	8b 4d 0c	 mov	 ecx, DWORD PTR _iCountryCode$[ebp]
  00078	51		 push	 ecx
  00079	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  0007e	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00083	89 45 f8	 mov	 DWORD PTR _channels$[ebp], eax

; 339  :     for(int i = 0; i < channels->GetSize(); i++)

  00086	c7 45 f4 00 00
	00 00		 mov	 DWORD PTR _i$143966[ebp], 0
  0008d	eb 09		 jmp	 SHORT $LN3@RefreshCha
$LN2@RefreshCha:
  0008f	8b 55 f4	 mov	 edx, DWORD PTR _i$143966[ebp]
  00092	83 c2 01	 add	 edx, 1
  00095	89 55 f4	 mov	 DWORD PTR _i$143966[ebp], edx
$LN3@RefreshCha:
  00098	8b 4d f8	 mov	 ecx, DWORD PTR _channels$[ebp]
  0009b	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  000a0	39 45 f4	 cmp	 DWORD PTR _i$143966[ebp], eax
  000a3	7d 77		 jge	 SHORT $LN1@RefreshCha

; 340  :     {
; 341  :         const CChannel* channel = channels->GetChannel(i);

  000a5	8b 45 f4	 mov	 eax, DWORD PTR _i$143966[ebp]
  000a8	50		 push	 eax
  000a9	8b 4d f8	 mov	 ecx, DWORD PTR _channels$[ebp]
  000ac	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  000b1	89 45 ec	 mov	 DWORD PTR _channel$143970[ebp], eax

; 342  :         // Channel names not yet available so adding name
; 343  :         // to combo a bit pointless, the class does support this for the
; 344  :         // future though
; 345  :         //_stprintf(sbuf, _T("%d - %s"), channel->GetChannelNumber(), channel->GetName());
; 346  :         _stprintf(sbuf, _T("%d"), channel->GetChannelNumber());

  000b4	8b 4d ec	 mov	 ecx, DWORD PTR _channel$143970[ebp]
  000b7	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  000bc	50		 push	 eax
  000bd	68 00 00 00 00	 push	 OFFSET ??_C@_15KNBIKKIN@?$AA?$CF?$AAd?$AA?$AA@
  000c2	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??RefreshChannelList@@YAXPAUHWND__@@H@Z@4PA_WA
  000c7	e8 00 00 00 00	 call	 __swprintf
  000cc	83 c4 0c	 add	 esp, 12			; 0000000cH

; 347  :         int insertAt = ComboBox_AddString(GetDlgItem(hDlg, IDC_CHANNEL), sbuf);

  000cf	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??RefreshChannelList@@YAXPAUHWND__@@H@Z@4PA_WA
  000d4	6a 00		 push	 0
  000d6	68 43 01 00 00	 push	 323			; 00000143H
  000db	68 98 05 00 00	 push	 1432			; 00000598H
  000e0	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000e3	51		 push	 ecx
  000e4	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000ea	50		 push	 eax
  000eb	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  000f1	89 45 f0	 mov	 DWORD PTR _insertAt$143971[ebp], eax

; 348  :         ComboBox_SetItemData(GetDlgItem(hDlg, IDC_CHANNEL), insertAt, (LPARAM)channel);

  000f4	8b 55 ec	 mov	 edx, DWORD PTR _channel$143970[ebp]
  000f7	52		 push	 edx
  000f8	8b 45 f0	 mov	 eax, DWORD PTR _insertAt$143971[ebp]
  000fb	50		 push	 eax
  000fc	68 51 01 00 00	 push	 337			; 00000151H
  00101	68 98 05 00 00	 push	 1432			; 00000598H
  00106	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00109	51		 push	 ecx
  0010a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00110	50		 push	 eax
  00111	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 349  :     }

  00117	e9 73 ff ff ff	 jmp	 $LN2@RefreshCha
$LN1@RefreshCha:

; 350  :     MyInUpdate = FALSE;

  0011c	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 351  : }

  00126	8b e5		 mov	 esp, ebp
  00128	5d		 pop	 ebp
  00129	c3		 ret	 0
?RefreshChannelList@@YAXPAUHWND__@@H@Z ENDP		; RefreshChannelList
_TEXT	ENDS
PUBLIC	?SelectChannel@@YAXPAUHWND__@@J@Z		; SelectChannel
; Function compile flags: /Odtp
;	COMDAT ?SelectChannel@@YAXPAUHWND__@@J@Z
_TEXT	SEGMENT
_Channel$143854 = -12					; size = 4
_i$143848 = -8						; size = 4
_channels$ = -4						; size = 4
_hDlg$ = 8						; size = 4
_ChannelToSelect$ = 12					; size = 4
?SelectChannel@@YAXPAUHWND__@@J@Z PROC			; SelectChannel, COMDAT

; 195  : {

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

; 196  :     const CCountryChannels* channels = MyCountries.GetChannels(CountryCode);

  00006	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CountryCode@@3HA ; CountryCode
  0000b	50		 push	 eax
  0000c	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00011	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00016	89 45 fc	 mov	 DWORD PTR _channels$[ebp], eax

; 197  : 
; 198  :     ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_CHANNEL), 0);

  00019	6a 00		 push	 0
  0001b	6a 00		 push	 0
  0001d	68 4e 01 00 00	 push	 334			; 0000014eH
  00022	68 98 05 00 00	 push	 1432			; 00000598H
  00027	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0002a	51		 push	 ecx
  0002b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00031	50		 push	 eax
  00032	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 199  : 
; 200  :     for(int i(0); i < ComboBox_GetCount(GetDlgItem(hDlg, IDC_CHANNEL)); ++i)

  00038	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR _i$143848[ebp], 0
  0003f	eb 09		 jmp	 SHORT $LN4@SelectChan
$LN3@SelectChan:
  00041	8b 55 f8	 mov	 edx, DWORD PTR _i$143848[ebp]
  00044	83 c2 01	 add	 edx, 1
  00047	89 55 f8	 mov	 DWORD PTR _i$143848[ebp], edx
$LN4@SelectChan:
  0004a	6a 00		 push	 0
  0004c	6a 00		 push	 0
  0004e	68 46 01 00 00	 push	 326			; 00000146H
  00053	68 98 05 00 00	 push	 1432			; 00000598H
  00058	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0005b	50		 push	 eax
  0005c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00062	50		 push	 eax
  00063	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00069	39 45 f8	 cmp	 DWORD PTR _i$143848[ebp], eax
  0006c	7d 5d		 jge	 SHORT $LN5@SelectChan

; 201  :     {
; 202  :         CChannel* Channel = (CChannel*)ComboBox_GetItemData(GetDlgItem(hDlg, IDC_CHANNEL), i);

  0006e	6a 00		 push	 0
  00070	8b 4d f8	 mov	 ecx, DWORD PTR _i$143848[ebp]
  00073	51		 push	 ecx
  00074	68 50 01 00 00	 push	 336			; 00000150H
  00079	68 98 05 00 00	 push	 1432			; 00000598H
  0007e	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00081	52		 push	 edx
  00082	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00088	50		 push	 eax
  00089	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0008f	89 45 f4	 mov	 DWORD PTR _Channel$143854[ebp], eax

; 203  :         if(Channel != NULL && Channel->GetChannelNumber() == ChannelToSelect)

  00092	83 7d f4 00	 cmp	 DWORD PTR _Channel$143854[ebp], 0
  00096	74 2e		 je	 SHORT $LN1@SelectChan
  00098	8b 4d f4	 mov	 ecx, DWORD PTR _Channel$143854[ebp]
  0009b	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  000a0	3b 45 0c	 cmp	 eax, DWORD PTR _ChannelToSelect$[ebp]
  000a3	75 21		 jne	 SHORT $LN1@SelectChan

; 204  :         {
; 205  :             ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_CHANNEL), i);

  000a5	6a 00		 push	 0
  000a7	8b 45 f8	 mov	 eax, DWORD PTR _i$143848[ebp]
  000aa	50		 push	 eax
  000ab	68 4e 01 00 00	 push	 334			; 0000014eH
  000b0	68 98 05 00 00	 push	 1432			; 00000598H
  000b5	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000b8	51		 push	 ecx
  000b9	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000bf	50		 push	 eax
  000c0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN1@SelectChan:

; 206  :         }

  000c6	e9 76 ff ff ff	 jmp	 $LN3@SelectChan
$LN5@SelectChan:

; 207  :     }
; 208  : }

  000cb	8b e5		 mov	 esp, ebp
  000cd	5d		 pop	 ebp
  000ce	c3		 ret	 0
?SelectChannel@@YAXPAUHWND__@@J@Z ENDP			; SelectChannel
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\channels.h
_TEXT	ENDS
;	COMDAT ?GetHigherFrequency@CCountryList@@QBEKH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_index$ = 8						; size = 4
?GetHigherFrequency@CCountryList@@QBEKH@Z PROC		; CCountryList::GetHigherFrequency, COMDAT
; _this$ = ecx

; 175  :     inline DWORD GetHigherFrequency(int index) const {return GetChannels(index)->GetHigherFrequency();};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 08	 mov	 eax, DWORD PTR _index$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00013	8b c8		 mov	 ecx, eax
  00015	e8 00 00 00 00	 call	 ?GetHigherFrequency@CChannelList@@QBEKXZ ; CChannelList::GetHigherFrequency
  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 04 00	 ret	 4
?GetHigherFrequency@CCountryList@@QBEKH@Z ENDP		; CCountryList::GetHigherFrequency
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?GetLowerFrequency@CCountryList@@QBEKH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_index$ = 8						; size = 4
?GetLowerFrequency@CCountryList@@QBEKH@Z PROC		; CCountryList::GetLowerFrequency, COMDAT
; _this$ = ecx

; 173  :     inline DWORD GetLowerFrequency(int index) const {return GetChannels(index)->GetLowerFrequency();};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 08	 mov	 eax, DWORD PTR _index$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00013	8b c8		 mov	 ecx, eax
  00015	e8 00 00 00 00	 call	 ?GetLowerFrequency@CChannelList@@QBEKXZ ; CChannelList::GetLowerFrequency
  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 04 00	 ret	 4
?GetLowerFrequency@CCountryList@@QBEKH@Z ENDP		; CCountryList::GetLowerFrequency
PUBLIC	?Channels_UpdateMenu@@YAXPAUHMENU__@@@Z		; Channels_UpdateMenu
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\programlist.cpp
;	COMDAT ?Channels_UpdateMenu@@YAXPAUHMENU__@@@Z
_TEXT	SEGMENT
_i$144824 = -12						; size = 4
_j$ = -8						; size = 4
_hMenuChannels$ = -4					; size = 4
_hMenu$ = 8						; size = 4
?Channels_UpdateMenu@@YAXPAUHMENU__@@@Z PROC		; Channels_UpdateMenu, COMDAT

; 1686 : {

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

; 1687 :     HMENU           hMenuChannels;
; 1688 :     int             j;
; 1689 :     hMenuChannels = GetChannelsSubmenu();

  00006	e8 00 00 00 00	 call	 ?GetChannelsSubmenu@@YAPAUHMENU__@@XZ ; GetChannelsSubmenu
  0000b	89 45 fc	 mov	 DWORD PTR _hMenuChannels$[ebp], eax

; 1690 :     if(hMenuChannels == NULL) return;

  0000e	83 7d fc 00	 cmp	 DWORD PTR _hMenuChannels$[ebp], 0
  00012	75 05		 jne	 SHORT $LN10@Channels_U@3
  00014	e9 3b 01 00 00	 jmp	 $LN11@Channels_U@3
$LN10@Channels_U@3:

; 1691 : 
; 1692 :     if (InitialNbMenuItems == -1)

  00019	83 3d 00 00 00
	00 ff		 cmp	 DWORD PTR _InitialNbMenuItems, -1
  00020	75 0f		 jne	 SHORT $LN9@Channels_U@3

; 1693 :     {
; 1694 :         InitialNbMenuItems = GetMenuItemCount(hMenuChannels);

  00022	8b 45 fc	 mov	 eax, DWORD PTR _hMenuChannels$[ebp]
  00025	50		 push	 eax
  00026	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetMenuItemCount@4
  0002c	a3 00 00 00 00	 mov	 DWORD PTR _InitialNbMenuItems, eax
$LN9@Channels_U@3:

; 1695 :     }
; 1696 : 
; 1697 :     j = GetMenuItemCount(hMenuChannels);

  00031	8b 4d fc	 mov	 ecx, DWORD PTR _hMenuChannels$[ebp]
  00034	51		 push	 ecx
  00035	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetMenuItemCount@4
  0003b	89 45 f8	 mov	 DWORD PTR _j$[ebp], eax
$LN8@Channels_U@3:

; 1698 :     while (j > InitialNbMenuItems)

  0003e	8b 55 f8	 mov	 edx, DWORD PTR _j$[ebp]
  00041	3b 15 00 00 00
	00		 cmp	 edx, DWORD PTR _InitialNbMenuItems
  00047	7e 1e		 jle	 SHORT $LN7@Channels_U@3

; 1699 :     {
; 1700 :         --j;

  00049	8b 45 f8	 mov	 eax, DWORD PTR _j$[ebp]
  0004c	83 e8 01	 sub	 eax, 1
  0004f	89 45 f8	 mov	 DWORD PTR _j$[ebp], eax

; 1701 :         RemoveMenu(hMenuChannels, j, MF_BYPOSITION);

  00052	68 00 04 00 00	 push	 1024			; 00000400H
  00057	8b 4d f8	 mov	 ecx, DWORD PTR _j$[ebp]
  0005a	51		 push	 ecx
  0005b	8b 55 fc	 mov	 edx, DWORD PTR _hMenuChannels$[ebp]
  0005e	52		 push	 edx
  0005f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__RemoveMenu@12

; 1702 :     }

  00065	eb d7		 jmp	 SHORT $LN8@Channels_U@3
$LN7@Channels_U@3:

; 1703 : 
; 1704 :     j = 0;

  00067	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR _j$[ebp], 0

; 1705 :     for (int i = 0; (i < MyChannels.GetSize()) && (j < MAX_CHANNELS); i++)

  0006e	c7 45 f4 00 00
	00 00		 mov	 DWORD PTR _i$144824[ebp], 0
  00075	eb 09		 jmp	 SHORT $LN6@Channels_U@3
$LN5@Channels_U@3:
  00077	8b 45 f4	 mov	 eax, DWORD PTR _i$144824[ebp]
  0007a	83 c0 01	 add	 eax, 1
  0007d	89 45 f4	 mov	 DWORD PTR _i$144824[ebp], eax
$LN6@Channels_U@3:
  00080	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00085	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0008a	39 45 f4	 cmp	 DWORD PTR _i$144824[ebp], eax
  0008d	0f 8d c1 00 00
	00		 jge	 $LN11@Channels_U@3
  00093	81 7d f8 ff 00
	00 00		 cmp	 DWORD PTR _j$[ebp], 255	; 000000ffH
  0009a	0f 8d b4 00 00
	00		 jge	 $LN11@Channels_U@3

; 1706 :     {
; 1707 :         if ((MyChannels.GetChannel(i)->GetFrequency() != 0) && MyChannels.GetChannel(i)->IsActive())

  000a0	8b 4d f4	 mov	 ecx, DWORD PTR _i$144824[ebp]
  000a3	51		 push	 ecx
  000a4	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  000a9	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  000ae	8b c8		 mov	 ecx, eax
  000b0	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  000b5	85 c0		 test	 eax, eax
  000b7	0f 84 92 00 00
	00		 je	 $LN3@Channels_U@3
  000bd	8b 55 f4	 mov	 edx, DWORD PTR _i$144824[ebp]
  000c0	52		 push	 edx
  000c1	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  000c6	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  000cb	8b c8		 mov	 ecx, eax
  000cd	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  000d2	85 c0		 test	 eax, eax
  000d4	74 79		 je	 SHORT $LN3@Channels_U@3

; 1708 :         {
; 1709 :             // Cut every 28 channels which is ok even when in 640x480
; 1710 :             // For the first column, take into account the first items (InitialNbMenuItems)
; 1711 :             // but reduce by 1 because of the two line separators
; 1712 :             if ((j+InitialNbMenuItems-1) % 28)

  000d6	a1 00 00 00 00	 mov	 eax, DWORD PTR _InitialNbMenuItems
  000db	8b 4d f8	 mov	 ecx, DWORD PTR _j$[ebp]
  000de	8d 44 01 ff	 lea	 eax, DWORD PTR [ecx+eax-1]
  000e2	99		 cdq
  000e3	b9 1c 00 00 00	 mov	 ecx, 28			; 0000001cH
  000e8	f7 f9		 idiv	 ecx
  000ea	85 d2		 test	 edx, edx
  000ec	74 2d		 je	 SHORT $LN2@Channels_U@3

; 1713 :             {
; 1714 :                 AppendMenu(hMenuChannels, MF_STRING | MF_ENABLED, IDM_CHANNEL_SELECT + j, MyChannels.GetChannel(i)->GetName());

  000ee	8b 55 f4	 mov	 edx, DWORD PTR _i$144824[ebp]
  000f1	52		 push	 edx
  000f2	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  000f7	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  000fc	8b c8		 mov	 ecx, eax
  000fe	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  00103	50		 push	 eax
  00104	8b 45 f8	 mov	 eax, DWORD PTR _j$[ebp]
  00107	05 63 06 00 00	 add	 eax, 1635		; 00000663H
  0010c	50		 push	 eax
  0010d	6a 00		 push	 0
  0010f	8b 4d fc	 mov	 ecx, DWORD PTR _hMenuChannels$[ebp]
  00112	51		 push	 ecx
  00113	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__AppendMenuW@16

; 1715 :             }
; 1716 :             else

  00119	eb 2b		 jmp	 SHORT $LN1@Channels_U@3
$LN2@Channels_U@3:

; 1717 :             {
; 1718 :                 AppendMenu(hMenuChannels, MF_STRING | MF_ENABLED | MF_MENUBARBREAK, IDM_CHANNEL_SELECT + j, MyChannels.GetChannel(i)->GetName());

  0011b	8b 55 f4	 mov	 edx, DWORD PTR _i$144824[ebp]
  0011e	52		 push	 edx
  0011f	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00124	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00129	8b c8		 mov	 ecx, eax
  0012b	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  00130	50		 push	 eax
  00131	8b 45 f8	 mov	 eax, DWORD PTR _j$[ebp]
  00134	05 63 06 00 00	 add	 eax, 1635		; 00000663H
  00139	50		 push	 eax
  0013a	6a 20		 push	 32			; 00000020H
  0013c	8b 4d fc	 mov	 ecx, DWORD PTR _hMenuChannels$[ebp]
  0013f	51		 push	 ecx
  00140	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__AppendMenuW@16
$LN1@Channels_U@3:

; 1719 :             }
; 1720 :             j++;

  00146	8b 55 f8	 mov	 edx, DWORD PTR _j$[ebp]
  00149	83 c2 01	 add	 edx, 1
  0014c	89 55 f8	 mov	 DWORD PTR _j$[ebp], edx
$LN3@Channels_U@3:

; 1721 :         }

  0014f	e9 23 ff ff ff	 jmp	 $LN5@Channels_U@3
$LN11@Channels_U@3:

; 1722 :     }
; 1723 : }

  00154	8b e5		 mov	 esp, ebp
  00156	5d		 pop	 ebp
  00157	c3		 ret	 0
?Channels_UpdateMenu@@YAXPAUHMENU__@@@Z ENDP		; Channels_UpdateMenu
_TEXT	ENDS
PUBLIC	?UpdateAutoScanDetails@@YAXPAUHWND__@@@Z	; UpdateAutoScanDetails
;	COMDAT ?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA
_BSS	SEGMENT
?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA DW 0100H DUP (?) ; `UpdateAutoScanDetails'::`2'::sbuf
; Function compile flags: /Odtp
_BSS	ENDS
;	COMDAT ?UpdateAutoScanDetails@@YAXPAUHWND__@@@Z
_TEXT	SEGMENT
tv144 = -20						; size = 8
tv135 = -12						; size = 8
_steps$ = -4						; size = 4
_hDlg$ = 8						; size = 4
?UpdateAutoScanDetails@@YAXPAUHWND__@@@Z PROC		; UpdateAutoScanDetails, COMDAT

; 279  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 14	 sub	 esp, 20			; 00000014H

; 280  :     static TCHAR sbuf[256];
; 281  : 
; 282  :     _stprintf(sbuf, _T("%10.4f"), MyCountries.GetLowerFrequency(CountryCode) / 1000000.0);

  00006	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CountryCode@@3HA ; CountryCode
  0000b	50		 push	 eax
  0000c	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00011	e8 00 00 00 00	 call	 ?GetLowerFrequency@CCountryList@@QBEKH@Z ; CCountryList::GetLowerFrequency
  00016	89 45 f4	 mov	 DWORD PTR tv135[ebp], eax
  00019	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR tv135[ebp+4], 0
  00020	df 6d f4	 fild	 QWORD PTR tv135[ebp]
  00023	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@412e848000000000
  00029	83 ec 08	 sub	 esp, 8
  0002c	dd 1c 24	 fstp	 QWORD PTR [esp]
  0002f	68 00 00 00 00	 push	 OFFSET ??_C@_1O@ONKGPFNO@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAf?$AA?$AA@
  00034	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA
  00039	e8 00 00 00 00	 call	 __swprintf
  0003e	83 c4 10	 add	 esp, 16			; 00000010H

; 283  :     Edit_SetText(GetDlgItem(hDlg, IDC_SCAN_MIN_FREQ), sbuf);

  00041	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA
  00046	68 f4 05 00 00	 push	 1524			; 000005f4H
  0004b	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0004e	51		 push	 ecx
  0004f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00055	50		 push	 eax
  00056	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 284  : 
; 285  :     _stprintf(sbuf, _T("%10.4f"), MyCountries.GetHigherFrequency(CountryCode) / 1000000.0);

  0005c	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CountryCode@@3HA ; CountryCode
  00062	52		 push	 edx
  00063	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00068	e8 00 00 00 00	 call	 ?GetHigherFrequency@CCountryList@@QBEKH@Z ; CCountryList::GetHigherFrequency
  0006d	89 45 ec	 mov	 DWORD PTR tv144[ebp], eax
  00070	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR tv144[ebp+4], 0
  00077	df 6d ec	 fild	 QWORD PTR tv144[ebp]
  0007a	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@412e848000000000
  00080	83 ec 08	 sub	 esp, 8
  00083	dd 1c 24	 fstp	 QWORD PTR [esp]
  00086	68 00 00 00 00	 push	 OFFSET ??_C@_1O@ONKGPFNO@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAf?$AA?$AA@
  0008b	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA
  00090	e8 00 00 00 00	 call	 __swprintf
  00095	83 c4 10	 add	 esp, 16			; 00000010H

; 286  :     Edit_SetText(GetDlgItem(hDlg, IDC_SCAN_MAX_FREQ), sbuf);

  00098	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA
  0009d	68 f3 05 00 00	 push	 1523			; 000005f3H
  000a2	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  000a5	50		 push	 eax
  000a6	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000ac	50		 push	 eax
  000ad	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 287  : 
; 288  :     //Keep user steps settings (if any)
; 289  :     DWORD steps = SelectedScanSteps(hDlg);

  000b3	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000b6	51		 push	 ecx
  000b7	e8 00 00 00 00	 call	 ?SelectedScanSteps@@YAKPAUHWND__@@@Z ; SelectedScanSteps
  000bc	83 c4 04	 add	 esp, 4
  000bf	89 45 fc	 mov	 DWORD PTR _steps$[ebp], eax

; 290  :     if (steps <= 0)

  000c2	83 7d fc 00	 cmp	 DWORD PTR _steps$[ebp], 0
  000c6	77 07		 ja	 SHORT $LN1@UpdateAuto

; 291  :     {
; 292  :         steps = SCAN_DEFAULT_STEPS;

  000c8	c7 45 fc 24 f4
	00 00		 mov	 DWORD PTR _steps$[ebp], 62500 ; 0000f424H
$LN1@UpdateAuto:

; 293  :     }
; 294  : 
; 295  :     _stprintf(sbuf, _T("%d"), steps);

  000cf	8b 55 fc	 mov	 edx, DWORD PTR _steps$[ebp]
  000d2	52		 push	 edx
  000d3	68 00 00 00 00	 push	 OFFSET ??_C@_15KNBIKKIN@?$AA?$CF?$AAd?$AA?$AA@
  000d8	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA
  000dd	e8 00 00 00 00	 call	 __swprintf
  000e2	83 c4 0c	 add	 esp, 12			; 0000000cH

; 296  :     Edit_SetText(GetDlgItem(hDlg, IDC_SCAN_STEPS), sbuf);

  000e5	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??UpdateAutoScanDetails@@YAXPAUHWND__@@@Z@4PA_WA
  000ea	68 f5 05 00 00	 push	 1525			; 000005f5H
  000ef	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  000f2	50		 push	 eax
  000f3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000f9	50		 push	 eax
  000fa	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 297  : }

  00100	8b e5		 mov	 esp, ebp
  00102	5d		 pop	 ebp
  00103	c3		 ret	 0
?UpdateAutoScanDetails@@YAXPAUHWND__@@@Z ENDP		; UpdateAutoScanDetails
_TEXT	ENDS
PUBLIC	?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z	; UpdateDetails
; Function compile flags: /Odtp
;	COMDAT ?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z
_TEXT	SEGMENT
_hDlg$ = 8						; size = 4
_pChannel$ = 12						; size = 4
?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z PROC	; UpdateDetails, COMDAT

; 220  : {

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

; 221  :     static TCHAR sbuf[256];
; 222  :     MyInUpdate = TRUE;

  00003	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 223  :     if (!pChannel)

  0000d	83 7d 0c 00	 cmp	 DWORD PTR _pChannel$[ebp], 0
  00011	0f 85 b3 00 00
	00		 jne	 $LN4@UpdateDeta

; 224  :     {
; 225  :         Edit_SetText(GetDlgItem(hDlg, IDC_NAME), _T(""));

  00017	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  0001c	68 9f 06 00 00	 push	 1695			; 0000069fH
  00021	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00024	50		 push	 eax
  00025	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0002b	50		 push	 eax
  0002c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 226  :         Edit_SetText(GetDlgItem(hDlg, IDC_EPGNAME), _T(""));

  00032	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  00037	68 a0 06 00 00	 push	 1696			; 000006a0H
  0003c	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0003f	51		 push	 ecx
  00040	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00046	50		 push	 eax
  00047	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 227  :         Edit_SetText(GetDlgItem(hDlg, IDC_FREQUENCY), _T(""));

  0004d	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  00052	68 5d 06 00 00	 push	 1629			; 0000065dH
  00057	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0005a	52		 push	 edx
  0005b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00061	50		 push	 eax
  00062	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 228  :         ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_FORMAT), 0);

  00068	6a 00		 push	 0
  0006a	6a 00		 push	 0
  0006c	68 4e 01 00 00	 push	 334			; 0000014eH
  00071	68 53 06 00 00	 push	 1619			; 00000653H
  00076	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00079	50		 push	 eax
  0007a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00080	50		 push	 eax
  00081	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 229  :         ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_CHANNEL), 0);

  00087	6a 00		 push	 0
  00089	6a 00		 push	 0
  0008b	68 4e 01 00 00	 push	 334			; 0000014eH
  00090	68 98 05 00 00	 push	 1432			; 00000598H
  00095	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00098	51		 push	 ecx
  00099	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0009f	50		 push	 eax
  000a0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 230  :         Button_SetCheck(GetDlgItem(hDlg, IDC_ACTIVE), BST_CHECKED);

  000a6	6a 00		 push	 0
  000a8	6a 01		 push	 1
  000aa	68 f1 00 00 00	 push	 241			; 000000f1H
  000af	68 78 05 00 00	 push	 1400			; 00000578H
  000b4	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  000b7	52		 push	 edx
  000b8	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000be	50		 push	 eax
  000bf	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 231  :     }
; 232  :     else

  000c5	e9 dd 00 00 00	 jmp	 $LN3@UpdateDeta
$LN4@UpdateDeta:

; 233  :     {
; 234  :         // set the name
; 235  :         Edit_SetText(GetDlgItem(hDlg, IDC_NAME), pChannel->GetName());

  000ca	8b 4d 0c	 mov	 ecx, DWORD PTR _pChannel$[ebp]
  000cd	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  000d2	50		 push	 eax
  000d3	68 9f 06 00 00	 push	 1695			; 0000069fH
  000d8	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  000db	50		 push	 eax
  000dc	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000e2	50		 push	 eax
  000e3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 236  : 
; 237  :         // set the EPG name
; 238  :         Edit_SetText(GetDlgItem(hDlg, IDC_EPGNAME), pChannel->GetEPGName());

  000e9	8b 4d 0c	 mov	 ecx, DWORD PTR _pChannel$[ebp]
  000ec	e8 00 00 00 00	 call	 ?GetEPGName@CChannel@@QBEPB_WXZ ; CChannel::GetEPGName
  000f1	50		 push	 eax
  000f2	68 a0 06 00 00	 push	 1696			; 000006a0H
  000f7	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000fa	51		 push	 ecx
  000fb	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00101	50		 push	 eax
  00102	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 239  : 
; 240  :         // set the frequency
; 241  :         SetFrequencyEditBox(hDlg, pChannel->GetFrequency());

  00108	8b 4d 0c	 mov	 ecx, DWORD PTR _pChannel$[ebp]
  0010b	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  00110	50		 push	 eax
  00111	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00114	52		 push	 edx
  00115	e8 00 00 00 00	 call	 ?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z ; SetFrequencyEditBox
  0011a	83 c4 08	 add	 esp, 8

; 242  : 
; 243  :         // set the channel
; 244  :         SelectChannel(hDlg, pChannel->GetChannelNumber());

  0011d	8b 4d 0c	 mov	 ecx, DWORD PTR _pChannel$[ebp]
  00120	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  00125	50		 push	 eax
  00126	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00129	50		 push	 eax
  0012a	e8 00 00 00 00	 call	 ?SelectChannel@@YAXPAUHWND__@@J@Z ; SelectChannel
  0012f	83 c4 08	 add	 esp, 8

; 245  : 
; 246  :         // set format
; 247  :         ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_FORMAT), pChannel->GetFormat() + 1);

  00132	6a 00		 push	 0
  00134	8b 4d 0c	 mov	 ecx, DWORD PTR _pChannel$[ebp]
  00137	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  0013c	83 c0 01	 add	 eax, 1
  0013f	50		 push	 eax
  00140	68 4e 01 00 00	 push	 334			; 0000014eH
  00145	68 53 06 00 00	 push	 1619			; 00000653H
  0014a	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0014d	51		 push	 ecx
  0014e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00154	50		 push	 eax
  00155	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 248  : 
; 249  :         // set active
; 250  :         if(pChannel->IsActive())

  0015b	8b 4d 0c	 mov	 ecx, DWORD PTR _pChannel$[ebp]
  0015e	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  00163	85 c0		 test	 eax, eax
  00165	74 21		 je	 SHORT $LN2@UpdateDeta

; 251  :         {
; 252  :             Button_SetCheck(GetDlgItem(hDlg, IDC_ACTIVE), BST_CHECKED);

  00167	6a 00		 push	 0
  00169	6a 01		 push	 1
  0016b	68 f1 00 00 00	 push	 241			; 000000f1H
  00170	68 78 05 00 00	 push	 1400			; 00000578H
  00175	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00178	52		 push	 edx
  00179	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0017f	50		 push	 eax
  00180	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 253  :         }
; 254  :         else

  00186	eb 1f		 jmp	 SHORT $LN3@UpdateDeta
$LN2@UpdateDeta:

; 255  :         {
; 256  :             Button_SetCheck(GetDlgItem(hDlg, IDC_ACTIVE), BST_UNCHECKED);

  00188	6a 00		 push	 0
  0018a	6a 00		 push	 0
  0018c	68 f1 00 00 00	 push	 241			; 000000f1H
  00191	68 78 05 00 00	 push	 1400			; 00000578H
  00196	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00199	50		 push	 eax
  0019a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  001a0	50		 push	 eax
  001a1	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN3@UpdateDeta:

; 257  :         }
; 258  :     }
; 259  :     MyInUpdate = FALSE;

  001a7	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 260  : }

  001b1	5d		 pop	 ebp
  001b2	c3		 ret	 0
?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z ENDP	; UpdateDetails
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\channels.h
_TEXT	ENDS
;	COMDAT ?GetCountryName@CCountryList@@QBEPB_WH@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_index$ = 8						; size = 4
?GetCountryName@CCountryList@@QBEPB_WH@Z PROC		; CCountryList::GetCountryName, COMDAT
; _this$ = ecx

; 167  :     inline LPCTSTR GetCountryName(int index) const {return GetChannels(index)->GetCountryName();};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 45 08	 mov	 eax, DWORD PTR _index$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00013	8b c8		 mov	 ecx, eax
  00015	e8 00 00 00 00	 call	 ?GetCountryName@CCountryChannels@@QBEQB_WXZ ; CCountryChannels::GetCountryName
  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 04 00	 ret	 4
?GetCountryName@CCountryList@@QBEPB_WH@Z ENDP		; CCountryList::GetCountryName
PUBLIC	?UpdateDetails@@YAXPAUHWND__@@H@Z		; UpdateDetails
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\programlist.cpp
;	COMDAT ?UpdateDetails@@YAXPAUHWND__@@H@Z
_TEXT	SEGMENT
_hDlg$ = 8						; size = 4
_iCurrentProgramIndex$ = 12				; size = 4
?UpdateDetails@@YAXPAUHWND__@@H@Z PROC			; UpdateDetails, COMDAT

; 263  : {

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

; 264  :     if (   (iCurrentProgramIndex >= 0)
; 265  :         && (iCurrentProgramIndex < MyChannels.GetSize()) )

  00003	83 7d 0c 00	 cmp	 DWORD PTR _iCurrentProgramIndex$[ebp], 0
  00007	7c 2c		 jl	 SHORT $LN2@UpdateDeta@2
  00009	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0000e	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00013	39 45 0c	 cmp	 DWORD PTR _iCurrentProgramIndex$[ebp], eax
  00016	7d 1d		 jge	 SHORT $LN2@UpdateDeta@2

; 266  :     {
; 267  :         UpdateDetails(hDlg, MyChannels.GetChannel(iCurrentProgramIndex));

  00018	8b 45 0c	 mov	 eax, DWORD PTR _iCurrentProgramIndex$[ebp]
  0001b	50		 push	 eax
  0001c	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00021	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00026	50		 push	 eax
  00027	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0002a	51		 push	 ecx
  0002b	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z ; UpdateDetails
  00030	83 c4 08	 add	 esp, 8

; 268  :     }
; 269  :     else

  00033	eb 0e		 jmp	 SHORT $LN3@UpdateDeta@2
$LN2@UpdateDeta@2:

; 270  :     {
; 271  :         //dont remove the cast or you'll end up with a stack overflow
; 272  :         UpdateDetails(hDlg, (CChannel*)NULL);

  00035	6a 00		 push	 0
  00037	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0003a	52		 push	 edx
  0003b	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z ; UpdateDetails
  00040	83 c4 08	 add	 esp, 8
$LN3@UpdateDeta@2:

; 273  :     }
; 274  : 
; 275  : }

  00043	5d		 pop	 ebp
  00044	c3		 ret	 0
?UpdateDetails@@YAXPAUHWND__@@H@Z ENDP			; UpdateDetails
PUBLIC	?RefreshProgramList@@YAXPAUHWND__@@H@Z		; RefreshProgramList
; Function compile flags: /Odtp
;	COMDAT ?RefreshProgramList@@YAXPAUHWND__@@H@Z
_TEXT	SEGMENT
_Channel$143930 = -12					; size = 4
_i$143926 = -8						; size = 4
_index$ = -4						; size = 4
_hDlg$ = 8						; size = 4
_ProgToSelect$ = 12					; size = 4
?RefreshProgramList@@YAXPAUHWND__@@H@Z PROC		; RefreshProgramList, COMDAT

; 301  : {

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

; 302  :     MyInUpdate = TRUE;

  00006	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 303  :     ListBox_ResetContent(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  00010	6a 00		 push	 0
  00012	6a 00		 push	 0
  00014	68 84 01 00 00	 push	 388			; 00000184H
  00019	68 c4 06 00 00	 push	 1732			; 000006c4H
  0001e	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00021	50		 push	 eax
  00022	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00028	50		 push	 eax
  00029	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 304  : 
; 305  :     for(int i = 0; i < MyChannels.GetSize(); i++)

  0002f	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR _i$143926[ebp], 0
  00036	eb 09		 jmp	 SHORT $LN5@RefreshPro
$LN4@RefreshPro:
  00038	8b 4d f8	 mov	 ecx, DWORD PTR _i$143926[ebp]
  0003b	83 c1 01	 add	 ecx, 1
  0003e	89 4d f8	 mov	 DWORD PTR _i$143926[ebp], ecx
$LN5@RefreshPro:
  00041	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00046	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0004b	39 45 f8	 cmp	 DWORD PTR _i$143926[ebp], eax
  0004e	7d 39		 jge	 SHORT $LN3@RefreshPro

; 306  :     {
; 307  :         const CChannel* Channel = MyChannels.GetChannel(i);

  00050	8b 55 f8	 mov	 edx, DWORD PTR _i$143926[ebp]
  00053	52		 push	 edx
  00054	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00059	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0005e	89 45 f4	 mov	 DWORD PTR _Channel$143930[ebp], eax

; 308  :         ListBox_AddString(GetDlgItem(hDlg, IDC_PROGRAMLIST), Channel->GetName());

  00061	8b 4d f4	 mov	 ecx, DWORD PTR _Channel$143930[ebp]
  00064	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  00069	50		 push	 eax
  0006a	6a 00		 push	 0
  0006c	68 80 01 00 00	 push	 384			; 00000180H
  00071	68 c4 06 00 00	 push	 1732			; 000006c4H
  00076	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00079	50		 push	 eax
  0007a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00080	50		 push	 eax
  00081	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 309  :     }

  00087	eb af		 jmp	 SHORT $LN4@RefreshPro
$LN3@RefreshPro:

; 310  : 
; 311  :     int index =  ProgToSelect;

  00089	8b 4d 0c	 mov	 ecx, DWORD PTR _ProgToSelect$[ebp]
  0008c	89 4d fc	 mov	 DWORD PTR _index$[ebp], ecx

; 312  :     if (index >= MyChannels.GetSize())

  0008f	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00094	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00099	39 45 fc	 cmp	 DWORD PTR _index$[ebp], eax
  0009c	7c 07		 jl	 SHORT $LN2@RefreshPro

; 313  :     {
; 314  :         index = 0;

  0009e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _index$[ebp], 0
$LN2@RefreshPro:

; 315  :     }
; 316  : 
; 317  :     if (index != -1)

  000a5	83 7d fc ff	 cmp	 DWORD PTR _index$[ebp], -1
  000a9	74 42		 je	 SHORT $LN1@RefreshPro

; 318  :     {
; 319  :         ListBox_SetCurSel(GetDlgItem(hDlg, IDC_PROGRAMLIST), index);

  000ab	6a 00		 push	 0
  000ad	8b 55 fc	 mov	 edx, DWORD PTR _index$[ebp]
  000b0	52		 push	 edx
  000b1	68 86 01 00 00	 push	 390			; 00000186H
  000b6	68 c4 06 00 00	 push	 1732			; 000006c4H
  000bb	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  000be	50		 push	 eax
  000bf	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000c5	50		 push	 eax
  000c6	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 320  :         ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_FORMAT), index);

  000cc	6a 00		 push	 0
  000ce	8b 4d fc	 mov	 ecx, DWORD PTR _index$[ebp]
  000d1	51		 push	 ecx
  000d2	68 4e 01 00 00	 push	 334			; 0000014eH
  000d7	68 53 06 00 00	 push	 1619			; 00000653H
  000dc	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  000df	52		 push	 edx
  000e0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000e6	50		 push	 eax
  000e7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN1@RefreshPro:

; 321  :     }
; 322  :     UpdateDetails(hDlg, index);

  000ed	8b 45 fc	 mov	 eax, DWORD PTR _index$[ebp]
  000f0	50		 push	 eax
  000f1	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000f4	51		 push	 ecx
  000f5	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@H@Z ; UpdateDetails
  000fa	83 c4 08	 add	 esp, 8

; 323  :     CurrentProgram = index;

  000fd	8b 55 fc	 mov	 edx, DWORD PTR _index$[ebp]
  00100	89 15 00 00 00
	00		 mov	 DWORD PTR ?CurrentProgram@@3JA, edx ; CurrentProgram

; 324  :     MyInUpdate = FALSE;

  00106	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 325  : }

  00110	8b e5		 mov	 esp, ebp
  00112	5d		 pop	 ebp
  00113	c3		 ret	 0
?RefreshProgramList@@YAXPAUHWND__@@H@Z ENDP		; RefreshProgramList
PUBLIC	?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; Channel_GetEPGName
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ$0
__ehfuncinfo$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ
_TEXT	SEGMENT
$T328717 = -16						; size = 4
__$EHRec$ = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ PROC ; Channel_GetEPGName, COMDAT

; 137  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@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	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR $T328717[ebp], 0

; 138  :     if(CurrentProgram < MyChannels.GetSize())

  0002a	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0002f	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00034	39 05 00 00 00
	00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram
  0003a	7d 37		 jge	 SHORT $LN2@Channel_Ge

; 139  :     {
; 140  :         return MyChannels.GetChannel(CurrentProgram)->GetEPGName();

  0003c	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00041	50		 push	 eax
  00042	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00047	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0004c	8b c8		 mov	 ecx, eax
  0004e	e8 00 00 00 00	 call	 ?GetEPGName@CChannel@@QBEPB_WXZ ; CChannel::GetEPGName
  00053	50		 push	 eax
  00054	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00057	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0005c	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00063	8b 4d f0	 mov	 ecx, DWORD PTR $T328717[ebp]
  00066	83 c9 01	 or	 ecx, 1
  00069	89 4d f0	 mov	 DWORD PTR $T328717[ebp], ecx
  0006c	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
  0006f	eb 22		 jmp	 SHORT $LN3@Channel_Ge

; 141  :     }
; 142  :     else

  00071	eb 20		 jmp	 SHORT $LN3@Channel_Ge
$LN2@Channel_Ge:

; 143  :     {
; 144  :         return _T("Unknown");

  00073	68 00 00 00 00	 push	 OFFSET ??_C@_1BA@LEPJIIOK@?$AAU?$AAn?$AAk?$AAn?$AAo?$AAw?$AAn?$AA?$AA@
  00078	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  0007b	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00080	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00087	8b 55 f0	 mov	 edx, DWORD PTR $T328717[ebp]
  0008a	83 ca 01	 or	 edx, 1
  0008d	89 55 f0	 mov	 DWORD PTR $T328717[ebp], edx
  00090	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
$LN3@Channel_Ge:

; 145  :     }
; 146  : }

  00093	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00096	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0009d	59		 pop	 ecx
  0009e	8b e5		 mov	 esp, ebp
  000a0	5d		 pop	 ebp
  000a1	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ$0:
  00000	8b 45 f0	 mov	 eax, DWORD PTR $T328717[ebp]
  00003	83 e0 01	 and	 eax, 1
  00006	0f 84 0c 00 00
	00		 je	 $LN6@Channel_Ge
  0000c	83 65 f0 fe	 and	 DWORD PTR $T328717[ebp], -2 ; fffffffeH
  00010	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00013	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> >
$LN6@Channel_Ge:
  00018	c3		 ret	 0
__ehhandler$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ:
  00019	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001d	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00020	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00023	33 c8		 xor	 ecx, eax
  00025	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002a	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ
  0002f	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_GetEPGName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ENDP ; Channel_GetEPGName
PUBLIC	?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; Channel_GetName
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ$0
__ehfuncinfo$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ
_TEXT	SEGMENT
$T328728 = -16						; size = 4
__$EHRec$ = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ PROC ; Channel_GetName, COMDAT

; 124  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@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	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR $T328728[ebp], 0

; 125  :     if(CurrentProgram < MyChannels.GetSize())

  0002a	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0002f	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00034	39 05 00 00 00
	00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram
  0003a	7d 37		 jge	 SHORT $LN2@Channel_Ge@2

; 126  :     {
; 127  :         return MyChannels.GetChannel(CurrentProgram)->GetName();

  0003c	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00041	50		 push	 eax
  00042	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00047	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0004c	8b c8		 mov	 ecx, eax
  0004e	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  00053	50		 push	 eax
  00054	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00057	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0005c	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00063	8b 4d f0	 mov	 ecx, DWORD PTR $T328728[ebp]
  00066	83 c9 01	 or	 ecx, 1
  00069	89 4d f0	 mov	 DWORD PTR $T328728[ebp], ecx
  0006c	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
  0006f	eb 22		 jmp	 SHORT $LN3@Channel_Ge@2

; 128  :     }
; 129  :     else

  00071	eb 20		 jmp	 SHORT $LN3@Channel_Ge@2
$LN2@Channel_Ge@2:

; 130  :     {
; 131  :         return _T("Unknown");

  00073	68 00 00 00 00	 push	 OFFSET ??_C@_1BA@LEPJIIOK@?$AAU?$AAn?$AAk?$AAn?$AAo?$AAw?$AAn?$AA?$AA@
  00078	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  0007b	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00080	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00087	8b 55 f0	 mov	 edx, DWORD PTR $T328728[ebp]
  0008a	83 ca 01	 or	 edx, 1
  0008d	89 55 f0	 mov	 DWORD PTR $T328728[ebp], edx
  00090	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]
$LN3@Channel_Ge@2:

; 132  :     }
; 133  : }

  00093	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00096	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0009d	59		 pop	 ecx
  0009e	8b e5		 mov	 esp, ebp
  000a0	5d		 pop	 ebp
  000a1	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ$0:
  00000	8b 45 f0	 mov	 eax, DWORD PTR $T328728[ebp]
  00003	83 e0 01	 and	 eax, 1
  00006	0f 84 0c 00 00
	00		 je	 $LN6@Channel_Ge@2
  0000c	83 65 f0 fe	 and	 DWORD PTR $T328728[ebp], -2 ; fffffffeH
  00010	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00013	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> >
$LN6@Channel_Ge@2:
  00018	c3		 ret	 0
__ehhandler$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ:
  00019	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001d	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00020	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00023	33 c8		 xor	 ecx, eax
  00025	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002a	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ
  0002f	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_GetName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ENDP ; Channel_GetName
PUBLIC	?Channels_Exit@@YAXXZ				; Channels_Exit
; Function compile flags: /Odtp
;	COMDAT ?Channels_Exit@@YAXXZ
_TEXT	SEGMENT
?Channels_Exit@@YAXXZ PROC				; Channels_Exit, COMDAT

; 1437 : {

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

; 1438 :     MyChannels.Clear();

  00003	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00008	e8 00 00 00 00	 call	 ?Clear@CChannelList@@QAEXXZ ; CChannelList::Clear

; 1439 : }

  0000d	5d		 pop	 ebp
  0000e	c3		 ret	 0
?Channels_Exit@@YAXXZ ENDP				; Channels_Exit
_TEXT	ENDS
PUBLIC	?ClearProgramList@@YAXPAUHWND__@@@Z		; ClearProgramList
; Function compile flags: /Odtp
;	COMDAT ?ClearProgramList@@YAXPAUHWND__@@@Z
_TEXT	SEGMENT
_hDlg$ = 8						; size = 4
?ClearProgramList@@YAXPAUHWND__@@@Z PROC		; ClearProgramList, COMDAT

; 354  : {

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

; 355  :     MyChannels.Clear();

  00003	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00008	e8 00 00 00 00	 call	 ?Clear@CChannelList@@QAEXXZ ; CChannelList::Clear

; 356  :     ListBox_ResetContent(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  0000d	6a 00		 push	 0
  0000f	6a 00		 push	 0
  00011	68 84 01 00 00	 push	 388			; 00000184H
  00016	68 c4 06 00 00	 push	 1732			; 000006c4H
  0001b	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0001e	50		 push	 eax
  0001f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00025	50		 push	 eax
  00026	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 357  :     Edit_SetText(GetDlgItem(hDlg, IDC_NAME), _T(""));

  0002c	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  00031	68 9f 06 00 00	 push	 1695			; 0000069fH
  00036	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00039	51		 push	 ecx
  0003a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00040	50		 push	 eax
  00041	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 358  :     Edit_SetText(GetDlgItem(hDlg, IDC_EPGNAME), _T(""));

  00047	68 00 00 00 00	 push	 OFFSET ??_C@_11LOCGONAA@?$AA?$AA@
  0004c	68 a0 06 00 00	 push	 1696			; 000006a0H
  00051	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00054	52		 push	 edx
  00055	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0005b	50		 push	 eax
  0005c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 359  : }

  00062	5d		 pop	 ebp
  00063	c3		 ret	 0
?ClearProgramList@@YAXPAUHWND__@@@Z ENDP		; ClearProgramList
PUBLIC	?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z ; AddScannedChannel
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z$0
__ehfuncinfo$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z
_TEXT	SEGMENT
tv142 = -24						; size = 4
tv143 = -20						; size = 4
$T341141 = -16						; size = 4
__$EHRec$ = -12						; size = 12
_hDlg$ = 8						; size = 4
_pNewChannel$ = 12					; size = 4
?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z PROC	; AddScannedChannel, COMDAT

; 566  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 0c	 sub	 esp, 12			; 0000000cH
  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

; 567  :     _ASSERTE(NULL != pNewChannel);
; 568  :     MyChannels.AddChannel(SmartPtr<CChannel>(pNewChannel));

  00025	83 ec 08	 sub	 esp, 8
  00028	8b cc		 mov	 ecx, esp
  0002a	89 65 f0	 mov	 DWORD PTR $T341141[ebp], esp
  0002d	6a 00		 push	 0
  0002f	8b 45 0c	 mov	 eax, DWORD PTR _pNewChannel$[ebp]
  00032	50		 push	 eax
  00033	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCChannel@@@@QAE@PAVCChannel@@PAUCounter@@@Z ; SmartPtr<CChannel>::SmartPtr<CChannel>
  00038	89 45 ec	 mov	 DWORD PTR tv143[ebp], eax
  0003b	8b 4d ec	 mov	 ecx, DWORD PTR tv143[ebp]
  0003e	89 4d e8	 mov	 DWORD PTR tv142[ebp], ecx
  00041	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00048	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0004f	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00054	e8 00 00 00 00	 call	 ?AddChannel@CChannelList@@QAEXV?$SmartPtr@VCChannel@@@@@Z ; CChannelList::AddChannel

; 569  : 
; 570  :     // We are going to add current channel at the end
; 571  :     // so set up CurrentProgram to be the last one
; 572  :     // as we will have just tunes to it and it will be
; 573  :     // what is showing
; 574  :     CurrentProgram = MyChannels.GetSize() - 1;

  00059	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0005e	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00063	83 e8 01	 sub	 eax, 1
  00066	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 575  :     ListBox_AddString(GetDlgItem(hDlg, IDC_PROGRAMLIST), pNewChannel->GetName());

  0006b	8b 4d 0c	 mov	 ecx, DWORD PTR _pNewChannel$[ebp]
  0006e	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  00073	50		 push	 eax
  00074	6a 00		 push	 0
  00076	68 80 01 00 00	 push	 384			; 00000180H
  0007b	68 c4 06 00 00	 push	 1732			; 000006c4H
  00080	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00083	52		 push	 edx
  00084	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0008a	50		 push	 eax
  0008b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 576  :     ListBox_SetCurSel(GetDlgItem(hDlg, IDC_PROGRAMLIST), CurrentProgram);

  00091	6a 00		 push	 0
  00093	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00098	50		 push	 eax
  00099	68 86 01 00 00	 push	 390			; 00000186H
  0009e	68 c4 06 00 00	 push	 1732			; 000006c4H
  000a3	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000a6	51		 push	 ecx
  000a7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000ad	50		 push	 eax
  000ae	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 577  :     UpdateDetails(hDlg, pNewChannel);

  000b4	8b 55 0c	 mov	 edx, DWORD PTR _pNewChannel$[ebp]
  000b7	52		 push	 edx
  000b8	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  000bb	50		 push	 eax
  000bc	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z ; UpdateDetails
  000c1	83 c4 08	 add	 esp, 8

; 578  : }

  000c4	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000c7	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000ce	59		 pop	 ecx
  000cf	8b e5		 mov	 esp, ebp
  000d1	5d		 pop	 ebp
  000d2	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR $T341141[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCChannel@@@@QAE@XZ ; SmartPtr<CChannel>::~SmartPtr<CChannel>
__ehhandler$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@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 f0	 mov	 ecx, DWORD PTR [edx-16]
  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$?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z ENDP	; AddScannedChannel
PUBLIC	__$ArrayPad$
PUBLIC	?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z ; Channel_GetVBIName
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$4
	DD	00H
	DD	FLAT:__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$0
	DD	01H
	DD	FLAT:__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$2
	DD	01H
	DD	FLAT:__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$3
__ehfuncinfo$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z DD 019930522H
	DD	05H
	DD	FLAT:__unwindtable$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z
_TEXT	SEGMENT
tv140 = -156						; size = 4
tv147 = -152						; size = 4
tv138 = -148						; size = 4
tv146 = -144						; size = 4
tv136 = -140						; size = 4
tv64 = -136						; size = 4
$T341160 = -132						; size = 4
$T341154 = -128						; size = 28
$T341153 = -100						; size = 28
$T341152 = -72						; size = 28
_szName$ = -44						; size = 28
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
___$ReturnUdt$ = 8					; size = 4
_bOnlyWithCodes$ = 12					; size = 4
?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z PROC ; Channel_GetVBIName, COMDAT

; 150  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec 90 00 00
	00		 sub	 esp, 144		; 00000090H
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	89 45 f0	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  00021	50		 push	 eax
  00022	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00025	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  0002b	c7 85 7c ff ff
	ff 00 00 00 00	 mov	 DWORD PTR $T341160[ebp], 0

; 151  :     tstring szName(VT_GetStationFromPDC());

  00035	8d 45 d4	 lea	 eax, DWORD PTR _szName$[ebp]
  00038	50		 push	 eax
  00039	e8 00 00 00 00	 call	 ?VT_GetStationFromPDC@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; VT_GetStationFromPDC
  0003e	83 c4 04	 add	 esp, 4
  00041	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1

; 152  : 
; 153  :     if (szName.empty())

  00048	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  0004b	e8 00 00 00 00	 call	 ?empty@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBE_NXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::empty
  00050	0f b6 c8	 movzx	 ecx, al
  00053	85 c9		 test	 ecx, ecx
  00055	74 3d		 je	 SHORT $LN4@Channel_Ge@3

; 154  :     {
; 155  :         szName = VPS_GetChannelNameFromCNI();

  00057	8d 55 b8	 lea	 edx, DWORD PTR $T341152[ebp]
  0005a	52		 push	 edx
  0005b	e8 00 00 00 00	 call	 ?VPS_GetChannelNameFromCNI@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; VPS_GetChannelNameFromCNI
  00060	83 c4 04	 add	 esp, 4
  00063	89 85 78 ff ff
	ff		 mov	 DWORD PTR tv64[ebp], eax
  00069	8b 85 78 ff ff
	ff		 mov	 eax, DWORD PTR tv64[ebp]
  0006f	89 85 74 ff ff
	ff		 mov	 DWORD PTR tv136[ebp], eax
  00075	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  00079	8b 8d 74 ff ff
	ff		 mov	 ecx, DWORD PTR tv136[ebp]
  0007f	51		 push	 ecx
  00080	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  00083	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=
  00088	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0008c	8d 4d b8	 lea	 ecx, DWORD PTR $T341152[ebp]
  0008f	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN4@Channel_Ge@3:

; 156  :     }
; 157  : 
; 158  :     if (szName.empty())

  00094	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  00097	e8 00 00 00 00	 call	 ?empty@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBE_NXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::empty
  0009c	0f b6 d0	 movzx	 edx, al
  0009f	85 d2		 test	 edx, edx
  000a1	74 3d		 je	 SHORT $LN3@Channel_Ge@3

; 159  :     {
; 160  :         szName = VT_GetStationFromIDP8301();

  000a3	8d 45 9c	 lea	 eax, DWORD PTR $T341153[ebp]
  000a6	50		 push	 eax
  000a7	e8 00 00 00 00	 call	 ?VT_GetStationFromIDP8301@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; VT_GetStationFromIDP8301
  000ac	83 c4 04	 add	 esp, 4
  000af	89 85 70 ff ff
	ff		 mov	 DWORD PTR tv146[ebp], eax
  000b5	8b 8d 70 ff ff
	ff		 mov	 ecx, DWORD PTR tv146[ebp]
  000bb	89 8d 6c ff ff
	ff		 mov	 DWORD PTR tv138[ebp], ecx
  000c1	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  000c5	8b 95 6c ff ff
	ff		 mov	 edx, DWORD PTR tv138[ebp]
  000cb	52		 push	 edx
  000cc	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  000cf	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=
  000d4	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  000d8	8d 4d 9c	 lea	 ecx, DWORD PTR $T341153[ebp]
  000db	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> >
$LN3@Channel_Ge@3:

; 161  :     }
; 162  : 
; 163  :     if (bOnlyWithCodes == FALSE)

  000e0	83 7d 0c 00	 cmp	 DWORD PTR _bOnlyWithCodes$[ebp], 0
  000e4	75 4c		 jne	 SHORT $LN2@Channel_Ge@3

; 164  :     {
; 165  :         if (szName.empty())

  000e6	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  000e9	e8 00 00 00 00	 call	 ?empty@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBE_NXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::empty
  000ee	0f b6 c0	 movzx	 eax, al
  000f1	85 c0		 test	 eax, eax
  000f3	74 3d		 je	 SHORT $LN2@Channel_Ge@3

; 166  :         {
; 167  :              szName = VT_GetStation();

  000f5	8d 4d 80	 lea	 ecx, DWORD PTR $T341154[ebp]
  000f8	51		 push	 ecx
  000f9	e8 00 00 00 00	 call	 ?VT_GetStation@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; VT_GetStation
  000fe	83 c4 04	 add	 esp, 4
  00101	89 85 68 ff ff
	ff		 mov	 DWORD PTR tv147[ebp], eax
  00107	8b 95 68 ff ff
	ff		 mov	 edx, DWORD PTR tv147[ebp]
  0010d	89 95 64 ff ff
	ff		 mov	 DWORD PTR tv140[ebp], edx
  00113	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  00117	8b 85 64 ff ff
	ff		 mov	 eax, DWORD PTR tv140[ebp]
  0011d	50		 push	 eax
  0011e	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  00121	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=
  00126	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  0012a	8d 4d 80	 lea	 ecx, DWORD PTR $T341154[ebp]
  0012d	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> >
$LN2@Channel_Ge@3:

; 168  :         }
; 169  :     }
; 170  : 
; 171  :     return szName;

  00132	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  00135	51		 push	 ecx
  00136	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00139	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0013e	8b 95 7c ff ff
	ff		 mov	 edx, DWORD PTR $T341160[ebp]
  00144	83 ca 01	 or	 edx, 1
  00147	89 95 7c ff ff
	ff		 mov	 DWORD PTR $T341160[ebp], edx
  0014d	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00151	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  00154	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> >
  00159	8b 45 08	 mov	 eax, DWORD PTR ___$ReturnUdt$[ebp]

; 172  : }

  0015c	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0015f	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00166	59		 pop	 ecx
  00167	8b 4d f0	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  0016a	33 cd		 xor	 ecx, ebp
  0016c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00171	8b e5		 mov	 esp, ebp
  00173	5d		 pop	 ebp
  00174	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$0:
  00000	8d 4d d4	 lea	 ecx, DWORD PTR _szName$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$1:
  00008	8d 4d b8	 lea	 ecx, DWORD PTR $T341152[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$2:
  00010	8d 4d 9c	 lea	 ecx, DWORD PTR $T341153[ebp]
  00013	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$3:
  00018	8d 4d 80	 lea	 ecx, DWORD PTR $T341154[ebp]
  0001b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z$4:
  00020	8b 85 7c ff ff
	ff		 mov	 eax, DWORD PTR $T341160[ebp]
  00026	83 e0 01	 and	 eax, 1
  00029	0f 84 0f 00 00
	00		 je	 $LN12@Channel_Ge@3
  0002f	83 a5 7c ff ff
	ff fe		 and	 DWORD PTR $T341160[ebp], -2 ; fffffffeH
  00036	8b 4d 08	 mov	 ecx, DWORD PTR ___$ReturnUdt$[ebp]
  00039	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> >
$LN12@Channel_Ge@3:
  0003e	c3		 ret	 0
__ehhandler$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z:
  0003f	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00043	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00046	8b 8a 6c ff ff
	ff		 mov	 ecx, DWORD PTR [edx-148]
  0004c	33 c8		 xor	 ecx, eax
  0004e	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00053	8b 4a fc	 mov	 ecx, DWORD PTR [edx-4]
  00056	33 c8		 xor	 ecx, eax
  00058	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0005d	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z
  00062	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z ENDP ; Channel_GetVBIName
PUBLIC	__$ArrayPad$
PUBLIC	?ChangeChannelInfo@@YAXPAUHWND__@@H@Z		; ChangeChannelInfo
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z$1
__ehfuncinfo$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z
_TEXT	SEGMENT
tv205 = -1100						; size = 4
tv207 = -1096						; size = 4
tv175 = -1092						; size = 4
$T343568 = -1088					; size = 4
$T343567 = -1084					; size = 4
$T343566 = -1080					; size = 4
_dFreq$144292 = -1076					; size = 8
_cLast$144291 = -1064					; size = 4
_Freq$144293 = -1060					; size = 4
_Active$144299 = -1056					; size = 4
_Channel$144295 = -1052					; size = 4
_Format$144296 = -1048					; size = 4
_sbuf$ = -1044						; size = 512
_sbuf2$ = -532						; size = 512
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_hDlg$ = 8						; size = 4
_iCurrentProgramIndex$ = 12				; size = 4
?ChangeChannelInfo@@YAXPAUHWND__@@H@Z PROC		; ChangeChannelInfo, COMDAT

; 819  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec 40 04 00
	00		 sub	 esp, 1088		; 00000440H
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	89 45 f0	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  00021	50		 push	 eax
  00022	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00025	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 820  :     MyInUpdate = TRUE;

  0002b	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 821  :     TCHAR sbuf[256];
; 822  :     TCHAR sbuf2[256];
; 823  : 
; 824  :     if(iCurrentProgramIndex < MyChannels.GetSize())

  00035	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0003a	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0003f	39 45 0c	 cmp	 DWORD PTR _iCurrentProgramIndex$[ebp], eax
  00042	0f 8d 2b 02 00
	00		 jge	 $LN1@ChangeChan

; 825  :     {
; 826  :         TCHAR* cLast;
; 827  :         Edit_GetText(GetDlgItem(hDlg, IDC_FREQUENCY), sbuf, 255);

  00048	68 ff 00 00 00	 push	 255			; 000000ffH
  0004d	8d 85 ec fb ff
	ff		 lea	 eax, DWORD PTR _sbuf$[ebp]
  00053	50		 push	 eax
  00054	68 5d 06 00 00	 push	 1629			; 0000065dH
  00059	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0005c	51		 push	 ecx
  0005d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00063	50		 push	 eax
  00064	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 828  :         double dFreq = _tcstod(sbuf, &cLast);

  0006a	8d 95 d8 fb ff
	ff		 lea	 edx, DWORD PTR _cLast$144291[ebp]
  00070	52		 push	 edx
  00071	8d 85 ec fb ff
	ff		 lea	 eax, DWORD PTR _sbuf$[ebp]
  00077	50		 push	 eax
  00078	e8 00 00 00 00	 call	 _wcstod
  0007d	83 c4 08	 add	 esp, 8
  00080	dd 9d cc fb ff
	ff		 fstp	 QWORD PTR _dFreq$144292[ebp]

; 829  :         long Freq = (long)(dFreq * 1000000.0);

  00086	dd 85 cc fb ff
	ff		 fld	 QWORD PTR _dFreq$144292[ebp]
  0008c	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  00092	e8 00 00 00 00	 call	 __ftol2_sse
  00097	89 85 dc fb ff
	ff		 mov	 DWORD PTR _Freq$144293[ebp], eax

; 830  :         int Channel = GetCurrentChannelNumber(hDlg);

  0009d	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000a0	51		 push	 ecx
  000a1	e8 00 00 00 00	 call	 ?GetCurrentChannelNumber@@YAHPAUHWND__@@@Z ; GetCurrentChannelNumber
  000a6	83 c4 04	 add	 esp, 4
  000a9	89 85 e4 fb ff
	ff		 mov	 DWORD PTR _Channel$144295[ebp], eax

; 831  :         int Format = ComboBox_GetCurSel(GetDlgItem(hDlg, IDC_FORMAT)) - 1;

  000af	6a 00		 push	 0
  000b1	6a 00		 push	 0
  000b3	68 47 01 00 00	 push	 327			; 00000147H
  000b8	68 53 06 00 00	 push	 1619			; 00000653H
  000bd	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  000c0	52		 push	 edx
  000c1	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000c7	50		 push	 eax
  000c8	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  000ce	83 e8 01	 sub	 eax, 1
  000d1	89 85 e8 fb ff
	ff		 mov	 DWORD PTR _Format$144296[ebp], eax

; 832  :         Edit_GetText(GetDlgItem(hDlg, IDC_NAME), sbuf, 255);

  000d7	68 ff 00 00 00	 push	 255			; 000000ffH
  000dc	8d 85 ec fb ff
	ff		 lea	 eax, DWORD PTR _sbuf$[ebp]
  000e2	50		 push	 eax
  000e3	68 9f 06 00 00	 push	 1695			; 0000069fH
  000e8	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  000eb	51		 push	 ecx
  000ec	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  000f2	50		 push	 eax
  000f3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 833  :         Edit_GetText(GetDlgItem(hDlg, IDC_EPGNAME), sbuf2, 255);

  000f9	68 ff 00 00 00	 push	 255			; 000000ffH
  000fe	8d 95 ec fd ff
	ff		 lea	 edx, DWORD PTR _sbuf2$[ebp]
  00104	52		 push	 edx
  00105	68 a0 06 00 00	 push	 1696			; 000006a0H
  0010a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0010d	50		 push	 eax
  0010e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00114	50		 push	 eax
  00115	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 834  :         BOOL Active = (Button_GetCheck(GetDlgItem(hDlg, IDC_ACTIVE)) == BST_CHECKED);

  0011b	6a 00		 push	 0
  0011d	6a 00		 push	 0
  0011f	68 f0 00 00 00	 push	 240			; 000000f0H
  00124	68 78 05 00 00	 push	 1400			; 00000578H
  00129	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0012c	51		 push	 ecx
  0012d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00133	50		 push	 eax
  00134	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0013a	83 e8 01	 sub	 eax, 1
  0013d	f7 d8		 neg	 eax
  0013f	1b c0		 sbb	 eax, eax
  00141	83 c0 01	 add	 eax, 1
  00144	89 85 e0 fb ff
	ff		 mov	 DWORD PTR _Active$144299[ebp], eax

; 835  :         MyChannels.SetChannel(iCurrentProgramIndex, SmartPtr<CChannel>(new CChannel(sbuf, sbuf2, Freq, Channel, (eVideoFormat)Format, Active)));

  0014a	6a 48		 push	 72			; 00000048H
  0014c	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  00151	83 c4 04	 add	 esp, 4
  00154	89 85 c0 fb ff
	ff		 mov	 DWORD PTR $T343568[ebp], eax
  0015a	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00161	83 bd c0 fb ff
	ff 00		 cmp	 DWORD PTR $T343568[ebp], 0
  00168	74 3d		 je	 SHORT $LN4@ChangeChan
  0016a	8b 95 e0 fb ff
	ff		 mov	 edx, DWORD PTR _Active$144299[ebp]
  00170	52		 push	 edx
  00171	8b 85 e8 fb ff
	ff		 mov	 eax, DWORD PTR _Format$144296[ebp]
  00177	50		 push	 eax
  00178	8b 8d e4 fb ff
	ff		 mov	 ecx, DWORD PTR _Channel$144295[ebp]
  0017e	51		 push	 ecx
  0017f	8b 95 dc fb ff
	ff		 mov	 edx, DWORD PTR _Freq$144293[ebp]
  00185	52		 push	 edx
  00186	8d 85 ec fd ff
	ff		 lea	 eax, DWORD PTR _sbuf2$[ebp]
  0018c	50		 push	 eax
  0018d	8d 8d ec fb ff
	ff		 lea	 ecx, DWORD PTR _sbuf$[ebp]
  00193	51		 push	 ecx
  00194	8b 8d c0 fb ff
	ff		 mov	 ecx, DWORD PTR $T343568[ebp]
  0019a	e8 00 00 00 00	 call	 ??0CChannel@@QAE@PB_W0KHW4eVideoFormat@@H@Z ; CChannel::CChannel
  0019f	89 85 bc fb ff
	ff		 mov	 DWORD PTR tv175[ebp], eax
  001a5	eb 0a		 jmp	 SHORT $LN5@ChangeChan
$LN4@ChangeChan:
  001a7	c7 85 bc fb ff
	ff 00 00 00 00	 mov	 DWORD PTR tv175[ebp], 0
$LN5@ChangeChan:
  001b1	8b 95 bc fb ff
	ff		 mov	 edx, DWORD PTR tv175[ebp]
  001b7	89 95 c4 fb ff
	ff		 mov	 DWORD PTR $T343567[ebp], edx
  001bd	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  001c4	83 ec 08	 sub	 esp, 8
  001c7	8b cc		 mov	 ecx, esp
  001c9	89 a5 c8 fb ff
	ff		 mov	 DWORD PTR $T343566[ebp], esp
  001cf	6a 00		 push	 0
  001d1	8b 85 c4 fb ff
	ff		 mov	 eax, DWORD PTR $T343567[ebp]
  001d7	50		 push	 eax
  001d8	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCChannel@@@@QAE@PAVCChannel@@PAUCounter@@@Z ; SmartPtr<CChannel>::SmartPtr<CChannel>
  001dd	89 85 b8 fb ff
	ff		 mov	 DWORD PTR tv207[ebp], eax
  001e3	8b 8d b8 fb ff
	ff		 mov	 ecx, DWORD PTR tv207[ebp]
  001e9	89 8d b4 fb ff
	ff		 mov	 DWORD PTR tv205[ebp], ecx
  001ef	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  001f6	8b 55 0c	 mov	 edx, DWORD PTR _iCurrentProgramIndex$[ebp]
  001f9	52		 push	 edx
  001fa	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00201	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00206	e8 00 00 00 00	 call	 ?SetChannel@CChannelList@@QAEXHV?$SmartPtr@VCChannel@@@@@Z ; CChannelList::SetChannel

; 836  :         ListBox_DeleteString(GetDlgItem(hDlg, IDC_PROGRAMLIST), iCurrentProgramIndex);

  0020b	6a 00		 push	 0
  0020d	8b 45 0c	 mov	 eax, DWORD PTR _iCurrentProgramIndex$[ebp]
  00210	50		 push	 eax
  00211	68 82 01 00 00	 push	 386			; 00000182H
  00216	68 c4 06 00 00	 push	 1732			; 000006c4H
  0021b	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0021e	51		 push	 ecx
  0021f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00225	50		 push	 eax
  00226	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 837  :         ListBox_InsertString(GetDlgItem(hDlg, IDC_PROGRAMLIST), iCurrentProgramIndex, sbuf);

  0022c	8d 95 ec fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  00232	52		 push	 edx
  00233	8b 45 0c	 mov	 eax, DWORD PTR _iCurrentProgramIndex$[ebp]
  00236	50		 push	 eax
  00237	68 81 01 00 00	 push	 385			; 00000181H
  0023c	68 c4 06 00 00	 push	 1732			; 000006c4H
  00241	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00244	51		 push	 ecx
  00245	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0024b	50		 push	 eax
  0024c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 838  :         ListBox_SetCurSel(GetDlgItem(hDlg, IDC_PROGRAMLIST), iCurrentProgramIndex);

  00252	6a 00		 push	 0
  00254	8b 55 0c	 mov	 edx, DWORD PTR _iCurrentProgramIndex$[ebp]
  00257	52		 push	 edx
  00258	68 86 01 00 00	 push	 390			; 00000186H
  0025d	68 c4 06 00 00	 push	 1732			; 000006c4H
  00262	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00265	50		 push	 eax
  00266	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0026c	50		 push	 eax
  0026d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN1@ChangeChan:

; 839  :     }
; 840  :     MyInUpdate = FALSE;

  00273	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 841  : }

  0027d	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00280	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00287	59		 pop	 ecx
  00288	8b 4d f0	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  0028b	33 cd		 xor	 ecx, ebp
  0028d	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00292	8b e5		 mov	 esp, ebp
  00294	5d		 pop	 ebp
  00295	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z$0:
  00000	8b 85 c0 fb ff
	ff		 mov	 eax, DWORD PTR $T343568[ebp]
  00006	50		 push	 eax
  00007	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0000c	59		 pop	 ecx
  0000d	c3		 ret	 0
__unwindfunclet$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z$1:
  0000e	8b 8d c8 fb ff
	ff		 mov	 ecx, DWORD PTR $T343566[ebp]
  00014	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCChannel@@@@QAE@XZ ; SmartPtr<CChannel>::~SmartPtr<CChannel>
__ehhandler$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z:
  00019	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001d	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00020	8b 8a bc fb ff
	ff		 mov	 ecx, DWORD PTR [edx-1092]
  00026	33 c8		 xor	 ecx, eax
  00028	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0002d	8b 4a fc	 mov	 ecx, DWORD PTR [edx-4]
  00030	33 c8		 xor	 ecx, eax
  00032	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00037	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?ChangeChannelInfo@@YAXPAUHWND__@@H@Z
  0003c	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ENDP		; ChangeChannelInfo
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\stringhelpers.h
;	COMDAT ??$?6$$BY0BK@$$CB_W@MakeString@@QAEAAV0@AAY0BK@$$CB_W@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Input$ = 8						; size = 4
??$?6$$BY0BK@$$CB_W@MakeString@@QAEAAV0@AAY0BK@$$CB_W@Z PROC ; MakeString::operator<<<wchar_t const [26]>, COMDAT
; _this$ = ecx

; 68   :    {

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

; 69   :       m_Buffer << Input;

  00007	8b 45 08	 mov	 eax, DWORD PTR _Input$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	51		 push	 ecx
  0000f	e8 00 00 00 00	 call	 ??$?6_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_ostream@_WU?$char_traits@_W@std@@@0@AAV10@PB_W@Z ; std::operator<<<wchar_t,std::char_traits<wchar_t> >
  00014	83 c4 08	 add	 esp, 8

; 70   :       return *this;

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

; 71   :    }

  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 04 00	 ret	 4
??$?6$$BY0BK@$$CB_W@MakeString@@QAEAAV0@AAY0BK@$$CB_W@Z ENDP ; MakeString::operator<<<wchar_t const [26]>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$?6PB_W@MakeString@@QAEAAV0@ABQB_W@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Input$ = 8						; size = 4
??$?6PB_W@MakeString@@QAEAAV0@ABQB_W@Z PROC		; MakeString::operator<<<wchar_t const *>, COMDAT
; _this$ = ecx

; 68   :    {

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

; 69   :       m_Buffer << Input;

  00007	8b 45 08	 mov	 eax, DWORD PTR _Input$[ebp]
  0000a	8b 08		 mov	 ecx, DWORD PTR [eax]
  0000c	51		 push	 ecx
  0000d	8b 55 fc	 mov	 edx, DWORD PTR _this$[ebp]
  00010	52		 push	 edx
  00011	e8 00 00 00 00	 call	 ??$?6_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_ostream@_WU?$char_traits@_W@std@@@0@AAV10@PB_W@Z ; std::operator<<<wchar_t,std::char_traits<wchar_t> >
  00016	83 c4 08	 add	 esp, 8

; 70   :       return *this;

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

; 71   :    }

  0001c	8b e5		 mov	 esp, ebp
  0001e	5d		 pop	 ebp
  0001f	c2 04 00	 ret	 4
??$?6PB_W@MakeString@@QAEAAV0@ABQB_W@Z ENDP		; MakeString::operator<<<wchar_t const *>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$?6$$BY0CE@$$CB_W@MakeString@@QAEAAV0@AAY0CE@$$CB_W@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Input$ = 8						; size = 4
??$?6$$BY0CE@$$CB_W@MakeString@@QAEAAV0@AAY0CE@$$CB_W@Z PROC ; MakeString::operator<<<wchar_t const [36]>, COMDAT
; _this$ = ecx

; 68   :    {

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

; 69   :       m_Buffer << Input;

  00007	8b 45 08	 mov	 eax, DWORD PTR _Input$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	51		 push	 ecx
  0000f	e8 00 00 00 00	 call	 ??$?6_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_ostream@_WU?$char_traits@_W@std@@@0@AAV10@PB_W@Z ; std::operator<<<wchar_t,std::char_traits<wchar_t> >
  00014	83 c4 08	 add	 esp, 8

; 70   :       return *this;

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

; 71   :    }

  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 04 00	 ret	 4
??$?6$$BY0CE@$$CB_W@MakeString@@QAEAAV0@AAY0CE@$$CB_W@Z ENDP ; MakeString::operator<<<wchar_t const [36]>
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ??$?6$$BY08$$CB_W@MakeString@@QAEAAV0@AAY08$$CB_W@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Input$ = 8						; size = 4
??$?6$$BY08$$CB_W@MakeString@@QAEAAV0@AAY08$$CB_W@Z PROC ; MakeString::operator<<<wchar_t const [9]>, COMDAT
; _this$ = ecx

; 68   :    {

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

; 69   :       m_Buffer << Input;

  00007	8b 45 08	 mov	 eax, DWORD PTR _Input$[ebp]
  0000a	50		 push	 eax
  0000b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000e	51		 push	 ecx
  0000f	e8 00 00 00 00	 call	 ??$?6_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_ostream@_WU?$char_traits@_W@std@@@0@AAV10@PB_W@Z ; std::operator<<<wchar_t,std::char_traits<wchar_t> >
  00014	83 c4 08	 add	 esp, 8

; 70   :       return *this;

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

; 71   :    }

  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 04 00	 ret	 4
??$?6$$BY08$$CB_W@MakeString@@QAEAAV0@AAY08$$CB_W@Z ENDP ; MakeString::operator<<<wchar_t const [9]>
; Function compile flags: /Odtp
;	COMDAT ??$?6N@MakeString@@QAEAAV0@ABN@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_Input$ = 8						; size = 4
??$?6N@MakeString@@QAEAAV0@ABN@Z PROC			; MakeString::operator<<<double>, COMDAT
; _this$ = ecx

; 68   :    {

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

; 69   :       m_Buffer << Input;

  00007	8b 45 08	 mov	 eax, DWORD PTR _Input$[ebp]
  0000a	83 ec 08	 sub	 esp, 8
  0000d	dd 00		 fld	 QWORD PTR [eax]
  0000f	dd 1c 24	 fstp	 QWORD PTR [esp]
  00012	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00015	e8 00 00 00 00	 call	 ??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@N@Z ; std::basic_ostream<wchar_t,std::char_traits<wchar_t> >::operator<<

; 70   :       return *this;

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

; 71   :    }

  0001d	8b e5		 mov	 esp, ebp
  0001f	5d		 pop	 ebp
  00020	c2 04 00	 ret	 4
??$?6N@MakeString@@QAEAAV0@ABN@Z ENDP			; MakeString::operator<<<double>
PUBLIC	?Load_Program_List_ASCII@@YAHXZ			; Load_Program_List_ASCII
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\programlist.cpp
;	COMDAT ?Load_Program_List_ASCII@@YAHXZ
_TEXT	SEGMENT
?Load_Program_List_ASCII@@YAHXZ PROC			; Load_Program_List_ASCII, COMDAT

; 114  : {

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

; 115  :     return MyChannels.ReadFile();

  00003	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00008	e8 00 00 00 00	 call	 ?ReadFile@CUserChannels@@QAEHXZ ; CUserChannels::ReadFile

; 116  : }

  0000d	5d		 pop	 ebp
  0000e	c3		 ret	 0
?Load_Program_List_ASCII@@YAHXZ ENDP			; Load_Program_List_ASCII
PUBLIC	?Channel_Change@@YAXHH@Z			; Channel_Change
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_Change@@YAXHH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Change@@YAXHH@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Change@@YAXHH@Z$1
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Change@@YAXHH@Z$2
__ehfuncinfo$?Channel_Change@@YAXHH@Z DD 019930522H
	DD	03H
	DD	FLAT:__unwindtable$?Channel_Change@@YAXHH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_Change@@YAXHH@Z
_TEXT	SEGMENT
tv207 = -128						; size = 4
tv208 = -124						; size = 4
tv175 = -120						; size = 4
tv138 = -116						; size = 4
tv139 = -112						; size = 4
$T354987 = -108						; size = 28
$T354986 = -80						; size = 28
$T354985 = -52						; size = 28
_i$144747 = -24						; size = 4
_OldChannel$144739 = -20				; size = 4
_VideoFormat$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_NewChannel$ = 8					; size = 4
_DontStorePrevious$ = 12				; size = 4
?Channel_Change@@YAXHH@Z PROC				; Channel_Change, COMDAT

; 1456 : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Channel_Change@@YAXHH@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 74	 sub	 esp, 116		; 00000074H
  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

; 1457 :     eVideoFormat VideoFormat;
; 1458 : 
; 1459 :     if (Providers_GetCurrentSource()->HasTuner() == TRUE)

  00025	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  0002a	8b c8		 mov	 ecx, eax
  0002c	e8 00 00 00 00	 call	 ?HasTuner@CSource@@QAEHXZ ; CSource::HasTuner
  00031	83 f8 01	 cmp	 eax, 1
  00034	0f 85 14 03 00
	00		 jne	 $LN14@Channel_Ch

; 1460 :     {
; 1461 :         if(NewChannel >= 0 && NewChannel < MyChannels.GetSize())

  0003a	83 7d 08 00	 cmp	 DWORD PTR _NewChannel$[ebp], 0
  0003e	0f 8c 0a 03 00
	00		 jl	 $LN14@Channel_Ch
  00044	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00049	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0004e	39 45 08	 cmp	 DWORD PTR _NewChannel$[ebp], eax
  00051	0f 8d f7 02 00
	00		 jge	 $LN14@Channel_Ch

; 1462 :         {
; 1463 :             if (MyChannels.GetChannel(NewChannel)->GetFrequency() != 0)

  00057	8b 45 08	 mov	 eax, DWORD PTR _NewChannel$[ebp]
  0005a	50		 push	 eax
  0005b	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00060	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00065	8b c8		 mov	 ecx, eax
  00067	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  0006c	85 c0		 test	 eax, eax
  0006e	0f 84 da 02 00
	00		 je	 $LN14@Channel_Ch

; 1464 :             {
; 1465 :                 int OldChannel = CurrentProgram;

  00074	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0007a	89 4d ec	 mov	 DWORD PTR _OldChannel$144739[ebp], ecx

; 1466 : 
; 1467 :                 Audio_Mute(PreSwitchMuteDelay);

  0007d	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?PreSwitchMuteDelay@@3HA ; PreSwitchMuteDelay
  00083	52		 push	 edx
  00084	e8 00 00 00 00	 call	 ?Audio_Mute@@YAXK@Z	; Audio_Mute
  00089	83 c4 04	 add	 esp, 4

; 1468 : 
; 1469 :                 // save any channel specific settings
; 1470 :                 // do this only when there is a real change
; 1471 :                 // this avoids saving before the channel has been set properly on
; 1472 :                 // the settings master when the input is changed to tuner
; 1473 :                 if(OldChannel != NewChannel)

  0008c	8b 45 ec	 mov	 eax, DWORD PTR _OldChannel$144739[ebp]
  0008f	3b 45 08	 cmp	 eax, DWORD PTR _NewChannel$[ebp]
  00092	74 11		 je	 SHORT $LN13@Channel_Ch

; 1474 :                 {
; 1475 :                     SettingsMaster->SaveGroupedSettings();

  00094	b9 00 00 00 00	 mov	 ecx, OFFSET ?SettingsMaster@@3V?$SmartPtr@VCSettingsMaster@@@@A ; SettingsMaster
  00099	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsMaster@@@@QBEPAVCSettingsMaster@@XZ ; SmartPtr<CSettingsMaster>::operator->
  0009e	8b c8		 mov	 ecx, eax
  000a0	e8 00 00 00 00	 call	 ?SaveGroupedSettings@CSettingsMaster@@QAEXXZ ; CSettingsMaster::SaveGroupedSettings
$LN13@Channel_Ch:

; 1476 :                 }
; 1477 : 
; 1478 :                 if (EventCollector.IsValid())

  000a5	b9 00 00 00 00	 mov	 ecx, OFFSET ?EventCollector@@3V?$SmartPtr@VCEventCollector@@@@A ; EventCollector
  000aa	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCEventCollector@@@@QBEHXZ ; SmartPtr<CEventCollector>::IsValid
  000af	85 c0		 test	 eax, eax
  000b1	74 41		 je	 SHORT $LN12@Channel_Ch

; 1479 :                 {
; 1480 :                     EventCollector->RaiseEvent(Providers_GetCurrentSource(), EVENT_CHANNEL_PRECHANGE, OldChannel, NewChannel);

  000b3	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  000b8	89 45 90	 mov	 DWORD PTR tv139[ebp], eax
  000bb	83 7d 90 00	 cmp	 DWORD PTR tv139[ebp], 0
  000bf	74 0b		 je	 SHORT $LN19@Channel_Ch
  000c1	8b 4d 90	 mov	 ecx, DWORD PTR tv139[ebp]
  000c4	83 c1 40	 add	 ecx, 64			; 00000040H
  000c7	89 4d 8c	 mov	 DWORD PTR tv138[ebp], ecx
  000ca	eb 07		 jmp	 SHORT $LN20@Channel_Ch
$LN19@Channel_Ch:
  000cc	c7 45 8c 00 00
	00 00		 mov	 DWORD PTR tv138[ebp], 0
$LN20@Channel_Ch:
  000d3	6a 00		 push	 0
  000d5	8b 55 08	 mov	 edx, DWORD PTR _NewChannel$[ebp]
  000d8	52		 push	 edx
  000d9	8b 45 ec	 mov	 eax, DWORD PTR _OldChannel$144739[ebp]
  000dc	50		 push	 eax
  000dd	6a 0b		 push	 11			; 0000000bH
  000df	8b 4d 8c	 mov	 ecx, DWORD PTR tv138[ebp]
  000e2	51		 push	 ecx
  000e3	b9 00 00 00 00	 mov	 ecx, OFFSET ?EventCollector@@3V?$SmartPtr@VCEventCollector@@@@A ; EventCollector
  000e8	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCEventCollector@@@@QBEPAVCEventCollector@@XZ ; SmartPtr<CEventCollector>::operator->
  000ed	8b c8		 mov	 ecx, eax
  000ef	e8 00 00 00 00	 call	 ?RaiseEvent@CEventCollector@@QAEXPAVCEventObject@@W4eEventType@@JJPAW43@@Z ; CEventCollector::RaiseEvent
$LN12@Channel_Ch:

; 1481 :                 }
; 1482 :                 if (!DontStorePrevious)

  000f4	83 7d 0c 00	 cmp	 DWORD PTR _DontStorePrevious$[ebp], 0
  000f8	75 0c		 jne	 SHORT $LN11@Channel_Ch

; 1483 :                 {
; 1484 :                     PreviousProgram = CurrentProgram;

  000fa	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00100	89 15 00 00 00
	00		 mov	 DWORD PTR ?PreviousProgram@@3JA, edx ; PreviousProgram
$LN11@Channel_Ch:

; 1485 :                 }
; 1486 :                 CurrentProgram = NewChannel;

  00106	8b 45 08	 mov	 eax, DWORD PTR _NewChannel$[ebp]
  00109	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 1487 :                 if(MyChannels.GetChannel(CurrentProgram)->GetFormat() != -1)

  0010e	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00114	51		 push	 ecx
  00115	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0011a	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0011f	8b c8		 mov	 ecx, eax
  00121	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  00126	83 f8 ff	 cmp	 eax, -1
  00129	74 1d		 je	 SHORT $LN10@Channel_Ch

; 1488 :                 {
; 1489 :                     VideoFormat = MyChannels.GetChannel(CurrentProgram)->GetFormat();

  0012b	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00131	52		 push	 edx
  00132	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00137	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0013c	8b c8		 mov	 ecx, eax
  0013e	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  00143	89 45 f0	 mov	 DWORD PTR _VideoFormat$[ebp], eax

; 1490 :                 }
; 1491 :                 else

  00146	eb 07		 jmp	 SHORT $LN9@Channel_Ch
$LN10@Channel_Ch:

; 1492 :                 {
; 1493 :                     VideoFormat = VIDEOFORMAT_LAST_TV;

  00148	c7 45 f0 14 00
	00 00		 mov	 DWORD PTR _VideoFormat$[ebp], 20 ; 00000014H
$LN9@Channel_Ch:

; 1494 :                 }
; 1495 : 
; 1496 :                 if (TunerSwitchScreenUpdateDelay > 0)

  0014f	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?TunerSwitchScreenUpdateDelay@@3HA, 0 ; TunerSwitchScreenUpdateDelay
  00156	7e 46		 jle	 SHORT $LN8@Channel_Ch

; 1497 :                 {
; 1498 :                     if (TunerSwitchScreenUpdateDelayTimer > 0)

  00158	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR _TunerSwitchScreenUpdateDelayTimer, 0
  0015f	7e 18		 jle	 SHORT $LN7@Channel_Ch

; 1499 :                     {
; 1500 :                         bNoScreenUpdateDuringTuning = FALSE;

  00161	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?bNoScreenUpdateDuringTuning@@3HA, 0 ; bNoScreenUpdateDuringTuning

; 1501 :                         KillTimer(NULL, TunerSwitchScreenUpdateDelayTimer);

  0016b	a1 00 00 00 00	 mov	 eax, DWORD PTR _TunerSwitchScreenUpdateDelayTimer
  00170	50		 push	 eax
  00171	6a 00		 push	 0
  00173	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__KillTimer@8
$LN7@Channel_Ch:

; 1502 :                     }
; 1503 :                     TunerSwitchScreenUpdateDelayTimer = SetTimer(NULL, NULL, TunerSwitchScreenUpdateDelay, TunerSwitchScreenUpdateDelayTimerProc);

  00179	68 00 00 00 00	 push	 OFFSET ?TunerSwitchScreenUpdateDelayTimerProc@@YGXPAUHWND__@@IIK@Z ; TunerSwitchScreenUpdateDelayTimerProc
  0017e	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?TunerSwitchScreenUpdateDelay@@3HA ; TunerSwitchScreenUpdateDelay
  00184	51		 push	 ecx
  00185	6a 00		 push	 0
  00187	6a 00		 push	 0
  00189	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetTimer@16
  0018f	a3 00 00 00 00	 mov	 DWORD PTR _TunerSwitchScreenUpdateDelayTimer, eax

; 1504 :                     bNoScreenUpdateDuringTuning = TRUE;

  00194	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?bNoScreenUpdateDuringTuning@@3HA, 1 ; bNoScreenUpdateDuringTuning
$LN8@Channel_Ch:

; 1505 :                 }
; 1506 :                 // try up to three times if something goes wrong.
; 1507 :                 // \todo: fix tuner write errors
; 1508 :                 for(int i = 0; i < 3; i++)

  0019e	c7 45 e8 00 00
	00 00		 mov	 DWORD PTR _i$144747[ebp], 0
  001a5	eb 09		 jmp	 SHORT $LN6@Channel_Ch
$LN5@Channel_Ch:
  001a7	8b 55 e8	 mov	 edx, DWORD PTR _i$144747[ebp]
  001aa	83 c2 01	 add	 edx, 1
  001ad	89 55 e8	 mov	 DWORD PTR _i$144747[ebp], edx
$LN6@Channel_Ch:
  001b0	83 7d e8 03	 cmp	 DWORD PTR _i$144747[ebp], 3
  001b4	7d 3d		 jge	 SHORT $LN4@Channel_Ch

; 1509 :                 {
; 1510 :                     if(Providers_GetCurrentSource()->SetTunerFrequency(
; 1511 :                                                      MyChannels.GetChannel(CurrentProgram)->GetFrequency(),
; 1512 :                                                      VideoFormat))

  001b6	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  001bb	89 45 88	 mov	 DWORD PTR tv175[ebp], eax
  001be	8b 45 f0	 mov	 eax, DWORD PTR _VideoFormat$[ebp]
  001c1	50		 push	 eax
  001c2	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  001c8	51		 push	 ecx
  001c9	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  001ce	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  001d3	8b c8		 mov	 ecx, eax
  001d5	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  001da	50		 push	 eax
  001db	8b 55 88	 mov	 edx, DWORD PTR tv175[ebp]
  001de	8b 02		 mov	 eax, DWORD PTR [edx]
  001e0	8b 4d 88	 mov	 ecx, DWORD PTR tv175[ebp]
  001e3	8b 90 90 00 00
	00		 mov	 edx, DWORD PTR [eax+144]
  001e9	ff d2		 call	 edx
  001eb	85 c0		 test	 eax, eax
  001ed	74 02		 je	 SHORT $LN3@Channel_Ch

; 1513 :                     {
; 1514 :                         break;

  001ef	eb 02		 jmp	 SHORT $LN4@Channel_Ch
$LN3@Channel_Ch:

; 1515 :                     }
; 1516 :                 }

  001f1	eb b4		 jmp	 SHORT $LN5@Channel_Ch
$LN4@Channel_Ch:

; 1517 : 
; 1518 :                 Audio_Unmute(PostSwitchMuteDelay);

  001f3	a1 00 00 00 00	 mov	 eax, DWORD PTR ?PostSwitchMuteDelay@@3HA ; PostSwitchMuteDelay
  001f8	50		 push	 eax
  001f9	e8 00 00 00 00	 call	 ?Audio_Unmute@@YAXK@Z	; Audio_Unmute
  001fe	83 c4 04	 add	 esp, 4

; 1519 : 
; 1520 :                 if (EventCollector.IsValid())

  00201	b9 00 00 00 00	 mov	 ecx, OFFSET ?EventCollector@@3V?$SmartPtr@VCEventCollector@@@@A ; EventCollector
  00206	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VCEventCollector@@@@QBEHXZ ; SmartPtr<CEventCollector>::IsValid
  0020b	85 c0		 test	 eax, eax
  0020d	74 41		 je	 SHORT $LN2@Channel_Ch

; 1521 :                 {
; 1522 :                     EventCollector->RaiseEvent(Providers_GetCurrentSource(), EVENT_CHANNEL_CHANGE, OldChannel, NewChannel);

  0020f	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00214	89 45 84	 mov	 DWORD PTR tv208[ebp], eax
  00217	83 7d 84 00	 cmp	 DWORD PTR tv208[ebp], 0
  0021b	74 0b		 je	 SHORT $LN21@Channel_Ch
  0021d	8b 4d 84	 mov	 ecx, DWORD PTR tv208[ebp]
  00220	83 c1 40	 add	 ecx, 64			; 00000040H
  00223	89 4d 80	 mov	 DWORD PTR tv207[ebp], ecx
  00226	eb 07		 jmp	 SHORT $LN22@Channel_Ch
$LN21@Channel_Ch:
  00228	c7 45 80 00 00
	00 00		 mov	 DWORD PTR tv207[ebp], 0
$LN22@Channel_Ch:
  0022f	6a 00		 push	 0
  00231	8b 55 08	 mov	 edx, DWORD PTR _NewChannel$[ebp]
  00234	52		 push	 edx
  00235	8b 45 ec	 mov	 eax, DWORD PTR _OldChannel$144739[ebp]
  00238	50		 push	 eax
  00239	6a 0c		 push	 12			; 0000000cH
  0023b	8b 4d 80	 mov	 ecx, DWORD PTR tv207[ebp]
  0023e	51		 push	 ecx
  0023f	b9 00 00 00 00	 mov	 ecx, OFFSET ?EventCollector@@3V?$SmartPtr@VCEventCollector@@@@A ; EventCollector
  00244	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCEventCollector@@@@QBEPAVCEventCollector@@XZ ; SmartPtr<CEventCollector>::operator->
  00249	8b c8		 mov	 ecx, eax
  0024b	e8 00 00 00 00	 call	 ?RaiseEvent@CEventCollector@@QAEXPAVCEventObject@@W4eEventType@@JJPAW43@@Z ; CEventCollector::RaiseEvent
$LN2@Channel_Ch:

; 1523 :                 }
; 1524 :                 // load any channel specific settings
; 1525 :                 // do this only when there is a real change
; 1526 :                 // must be done after the event is fired as this sets the
; 1527 :                 // channel name on the settings master
; 1528 :                 if(OldChannel != NewChannel)

  00250	8b 55 ec	 mov	 edx, DWORD PTR _OldChannel$144739[ebp]
  00253	3b 55 08	 cmp	 edx, DWORD PTR _NewChannel$[ebp]
  00256	74 11		 je	 SHORT $LN1@Channel_Ch

; 1529 :                 {
; 1530 :                     SettingsMaster->LoadGroupedSettings();

  00258	b9 00 00 00 00	 mov	 ecx, OFFSET ?SettingsMaster@@3V?$SmartPtr@VCSettingsMaster@@@@A ; SettingsMaster
  0025d	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsMaster@@@@QBEPAVCSettingsMaster@@XZ ; SmartPtr<CSettingsMaster>::operator->
  00262	8b c8		 mov	 ecx, eax
  00264	e8 00 00 00 00	 call	 ?LoadGroupedSettings@CSettingsMaster@@QAEXXZ ; CSettingsMaster::LoadGroupedSettings
$LN1@Channel_Ch:

; 1531 :                 }
; 1532 : 
; 1533 :                 VBI_ChannelChange();

  00269	e8 00 00 00 00	 call	 ?VBI_ChannelChange@@YAXXZ ; VBI_ChannelChange

; 1534 : 
; 1535 :                 StatusBar_ShowText(STATUS_TEXT, MyChannels.GetChannel(CurrentProgram)->GetName());

  0026e	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00273	50		 push	 eax
  00274	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00279	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0027e	8b c8		 mov	 ecx, eax
  00280	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  00285	50		 push	 eax
  00286	8d 4d cc	 lea	 ecx, DWORD PTR $T354985[ebp]
  00289	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0028e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00295	8d 4d cc	 lea	 ecx, DWORD PTR $T354985[ebp]
  00298	51		 push	 ecx
  00299	6a 00		 push	 0
  0029b	e8 00 00 00 00	 call	 ?StatusBar_ShowText@@YAXW4eStatusBarBox@@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; StatusBar_ShowText
  002a0	83 c4 08	 add	 esp, 8
  002a3	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  002aa	8d 4d cc	 lea	 ecx, DWORD PTR $T354985[ebp]
  002ad	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> >

; 1536 :                 OSD_ShowText(MyChannels.GetChannel(CurrentProgram)->GetName(), 0);

  002b2	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  002b8	52		 push	 edx
  002b9	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  002be	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  002c3	8b c8		 mov	 ecx, eax
  002c5	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  002ca	50		 push	 eax
  002cb	8d 4d b0	 lea	 ecx, DWORD PTR $T354986[ebp]
  002ce	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  002d3	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  002da	6a 00		 push	 0
  002dc	6a 00		 push	 0
  002de	83 ec 08	 sub	 esp, 8
  002e1	d9 ee		 fldz
  002e3	dd 1c 24	 fstp	 QWORD PTR [esp]
  002e6	8d 45 b0	 lea	 eax, DWORD PTR $T354986[ebp]
  002e9	50		 push	 eax
  002ea	e8 00 00 00 00	 call	 ?OSD_ShowText@@YAXABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@NHH@Z ; OSD_ShowText
  002ef	83 c4 14	 add	 esp, 20			; 00000014H
  002f2	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  002f9	8d 4d b0	 lea	 ecx, DWORD PTR $T354986[ebp]
  002fc	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> >

; 1537 :                 MyEPG.ShowOSD();

  00301	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyEPG@@3VCEPG@@A ; MyEPG
  00306	e8 00 00 00 00	 call	 ?ShowOSD@CEPG@@QAEXXZ	; CEPG::ShowOSD

; 1538 :                 SetTrayTip(MyChannels.GetChannel(CurrentProgram)->GetName());

  0030b	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00311	51		 push	 ecx
  00312	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00317	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0031c	8b c8		 mov	 ecx, eax
  0031e	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  00323	50		 push	 eax
  00324	8d 4d 94	 lea	 ecx, DWORD PTR $T354987[ebp]
  00327	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0032c	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 2
  00333	8d 55 94	 lea	 edx, DWORD PTR $T354987[ebp]
  00336	52		 push	 edx
  00337	e8 00 00 00 00	 call	 ?SetTrayTip@@YAXABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; SetTrayTip
  0033c	83 c4 04	 add	 esp, 4
  0033f	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00346	8d 4d 94	 lea	 ecx, DWORD PTR $T354987[ebp]
  00349	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> >
$LN14@Channel_Ch:

; 1539 :             }
; 1540 :         }
; 1541 :     }
; 1542 : }

  0034e	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00351	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00358	59		 pop	 ecx
  00359	8b e5		 mov	 esp, ebp
  0035b	5d		 pop	 ebp
  0035c	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_Change@@YAXHH@Z$0:
  00000	8d 4d cc	 lea	 ecx, DWORD PTR $T354985[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_Change@@YAXHH@Z$1:
  00008	8d 4d b0	 lea	 ecx, DWORD PTR $T354986[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_Change@@YAXHH@Z$2:
  00010	8d 4d 94	 lea	 ecx, DWORD PTR $T354987[ebp]
  00013	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$?Channel_Change@@YAXHH@Z:
  00018	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001f	8b 4a 88	 mov	 ecx, DWORD PTR [edx-120]
  00022	33 c8		 xor	 ecx, eax
  00024	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00029	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_Change@@YAXHH@Z
  0002e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_Change@@YAXHH@Z ENDP				; Channel_Change
PUBLIC	?EndScan@@YAXPAUHWND__@@@Z			; EndScan
; Function compile flags: /Odtp
;	COMDAT ?EndScan@@YAXPAUHWND__@@@Z
_TEXT	SEGMENT
_hDlg$ = 8						; size = 4
?EndScan@@YAXPAUHWND__@@@Z PROC				; EndScan, COMDAT

; 787  : {

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

; 788  :     _ASSERTE(TRUE == MyInScan);
; 789  :     MyInScan = FALSE;

  00003	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInScan@@3HA, 0 ; MyInScan

; 790  : 
; 791  :     if(MyChannels.GetSize() > 0)

  0000d	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00012	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00017	85 c0		 test	 eax, eax
  00019	7e 46		 jle	 SHORT $LN1@EndScan

; 792  :     {
; 793  :         CurrentProgram = MyChannels.GetSize()-1;

  0001b	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00020	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00025	83 e8 01	 sub	 eax, 1
  00028	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 794  :         ListBox_SetCurSel(GetDlgItem(hDlg, IDC_PROGRAMLIST), CurrentProgram);

  0002d	6a 00		 push	 0
  0002f	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00034	50		 push	 eax
  00035	68 86 01 00 00	 push	 390			; 00000186H
  0003a	68 c4 06 00 00	 push	 1732			; 000006c4H
  0003f	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00042	51		 push	 ecx
  00043	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00049	50		 push	 eax
  0004a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 795  :         Channel_Change(CurrentProgram);

  00050	6a 00		 push	 0
  00052	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00058	52		 push	 edx
  00059	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  0005e	83 c4 08	 add	 esp, 8
$LN1@EndScan:

; 796  :     }
; 797  : 
; 798  :     Button_SetText(GetDlgItem(hDlg, IDC_SCAN), _T("Scan"));

  00061	68 00 00 00 00	 push	 OFFSET ??_C@_19IGDFBFF@?$AAS?$AAc?$AAa?$AAn?$AA?$AA@
  00066	68 f3 06 00 00	 push	 1779			; 000006f3H
  0006b	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0006e	50		 push	 eax
  0006f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00075	50		 push	 eax
  00076	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowTextW@8

; 799  :     UpdateDetails(hDlg, CurrentProgram);

  0007c	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00082	51		 push	 ecx
  00083	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00086	52		 push	 edx
  00087	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@H@Z ; UpdateDetails
  0008c	83 c4 08	 add	 esp, 8

; 800  :     UpdateEnabledState(hDlg, TRUE);

  0008f	6a 01		 push	 1
  00091	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00094	50		 push	 eax
  00095	e8 00 00 00 00	 call	 ?UpdateEnabledState@@YAXPAUHWND__@@H@Z ; UpdateEnabledState
  0009a	83 c4 08	 add	 esp, 8

; 801  : }

  0009d	5d		 pop	 ebp
  0009e	c3		 ret	 0
?EndScan@@YAXPAUHWND__@@@Z ENDP				; EndScan
_TEXT	ENDS
PUBLIC	?FindFrequency@@YAKKHK@Z			; FindFrequency
;	COMDAT ?sbuf@?1??FindFrequency@@YAKKHK@Z@4PA_WA
_BSS	SEGMENT
?sbuf@?1??FindFrequency@@YAKKHK@Z@4PA_WA DW 0100H DUP (?) ; `FindFrequency'::`2'::sbuf
_BSS	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?FindFrequency@@YAKKHK@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?FindFrequency@@YAKKHK@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?FindFrequency@@YAKKHK@Z$1
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?FindFrequency@@YAKKHK@Z$2
__ehfuncinfo$?FindFrequency@@YAKKHK@Z DD 019930522H
	DD	03H
	DD	FLAT:__unwindtable$?FindFrequency@@YAKKHK@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?FindFrequency@@YAKKHK@Z
_TEXT	SEGMENT
tv179 = -276						; size = 4
tv174 = -272						; size = 4
tv191 = -268						; size = 4
tv90 = -264						; size = 4
tv133 = -260						; size = 4
tv188 = -256						; size = 4
tv192 = -252						; size = 4
tv207 = -248						; size = 8
$T355004 = -240						; size = 8
$T355003 = -232						; size = 28
$T355002 = -204						; size = 8
$T355001 = -196						; size = 128
_afcStatus$144050 = -68					; size = 4
_afcDeviation$144049 = -64				; size = 4
_returnedFrequency$ = -60				; size = 4
_StartTick$ = -56					; size = 4
_msg$ = -52						; size = 28
_MaxTuneDelay$ = -24					; size = 4
_currentSource$ = -20					; size = 4
_ElapsedTicks$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_Freq$ = 8						; size = 4
_Format$ = 12						; size = 4
_dwAFCFrequencyDeviationThreshold$ = 16			; size = 4
?FindFrequency@@YAKKHK@Z PROC				; FindFrequency, COMDAT

; 442  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?FindFrequency@@YAKKHK@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec 08 01 00
	00		 sub	 esp, 264		; 00000108H
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	50		 push	 eax
  0001f	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00022	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 443  :     static TCHAR sbuf[256];
; 444  :     if (Freq <= 0)

  00028	83 7d 08 00	 cmp	 DWORD PTR _Freq$[ebp], 0
  0002c	77 07		 ja	 SHORT $LN23@FindFreque

; 445  :     {
; 446  :         return 0;

  0002e	33 c0		 xor	 eax, eax
  00030	e9 ea 02 00 00	 jmp	 $LN24@FindFreque
$LN23@FindFreque:

; 447  :     }
; 448  :     if(Format == -1)

  00035	83 7d 0c ff	 cmp	 DWORD PTR _Format$[ebp], -1
  00039	75 07		 jne	 SHORT $LN22@FindFreque

; 449  :     {
; 450  :         Format = VIDEOFORMAT_LAST_TV;

  0003b	c7 45 0c 14 00
	00 00		 mov	 DWORD PTR _Format$[ebp], 20 ; 00000014H
$LN22@FindFreque:

; 451  :     }
; 452  : 
; 453  :     CSource* currentSource = Providers_GetCurrentSource();

  00042	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00047	89 45 ec	 mov	 DWORD PTR _currentSource$[ebp], eax

; 454  :     _ASSERTE(NULL != currentSource);
; 455  : 
; 456  :     if (!currentSource->SetTunerFrequency(Freq, (eVideoFormat)Format))

  0004a	8b 45 0c	 mov	 eax, DWORD PTR _Format$[ebp]
  0004d	50		 push	 eax
  0004e	8b 4d 08	 mov	 ecx, DWORD PTR _Freq$[ebp]
  00051	51		 push	 ecx
  00052	8b 55 ec	 mov	 edx, DWORD PTR _currentSource$[ebp]
  00055	8b 02		 mov	 eax, DWORD PTR [edx]
  00057	8b 4d ec	 mov	 ecx, DWORD PTR _currentSource$[ebp]
  0005a	8b 90 90 00 00
	00		 mov	 edx, DWORD PTR [eax+144]
  00060	ff d2		 call	 edx
  00062	85 c0		 test	 eax, eax
  00064	0f 85 c8 00 00
	00		 jne	 $LN21@FindFreque

; 457  :     {
; 458  :         ErrorBox(MakeString() << _T("SetFrequency ") << (double)Freq / 1000000.0 << _T(" Failed."));

  0006a	8b 45 08	 mov	 eax, DWORD PTR _Freq$[ebp]
  0006d	89 85 08 ff ff
	ff		 mov	 DWORD PTR tv207[ebp], eax
  00073	c7 85 0c ff ff
	ff 00 00 00 00	 mov	 DWORD PTR tv207[ebp+4], 0
  0007d	df ad 08 ff ff
	ff		 fild	 QWORD PTR tv207[ebp]
  00083	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@412e848000000000
  00089	dd 9d 34 ff ff
	ff		 fstp	 QWORD PTR $T355002[ebp]
  0008f	8d 8d 3c ff ff
	ff		 lea	 ecx, DWORD PTR $T355001[ebp]
  00095	e8 00 00 00 00	 call	 ??0MakeString@@QAE@XZ
  0009a	89 85 04 ff ff
	ff		 mov	 DWORD PTR tv192[ebp], eax
  000a0	8b 8d 04 ff ff
	ff		 mov	 ecx, DWORD PTR tv192[ebp]
  000a6	89 8d 00 ff ff
	ff		 mov	 DWORD PTR tv188[ebp], ecx
  000ac	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  000b3	8d 95 18 ff ff
	ff		 lea	 edx, DWORD PTR $T355003[ebp]
  000b9	52		 push	 edx
  000ba	68 00 00 00 00	 push	 OFFSET ??_C@_1BC@JMDMPADK@?$AA?5?$AAF?$AAa?$AAi?$AAl?$AAe?$AAd?$AA?4?$AA?$AA@
  000bf	8d 85 34 ff ff
	ff		 lea	 eax, DWORD PTR $T355002[ebp]
  000c5	50		 push	 eax
  000c6	68 00 00 00 00	 push	 OFFSET ??_C@_1BM@EPHEGCIH@?$AAS?$AAe?$AAt?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AA?$AA@
  000cb	8b 8d 00 ff ff
	ff		 mov	 ecx, DWORD PTR tv188[ebp]
  000d1	e8 00 00 00 00	 call	 ??$?6$$BY0O@$$CB_W@MakeString@@QAEAAV0@AAY0O@$$CB_W@Z ; MakeString::operator<<<wchar_t const [14]>
  000d6	8b c8		 mov	 ecx, eax
  000d8	e8 00 00 00 00	 call	 ??$?6N@MakeString@@QAEAAV0@ABN@Z ; MakeString::operator<<<double>
  000dd	8b c8		 mov	 ecx, eax
  000df	e8 00 00 00 00	 call	 ??$?6$$BY08$$CB_W@MakeString@@QAEAAV0@AAY08$$CB_W@Z ; MakeString::operator<<<wchar_t const [9]>
  000e4	8b c8		 mov	 ecx, eax
  000e6	e8 00 00 00 00	 call	 ??BMakeString@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; MakeString::operator std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  000eb	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  000ef	8d 8d 18 ff ff
	ff		 lea	 ecx, DWORD PTR $T355003[ebp]
  000f5	51		 push	 ecx
  000f6	68 ca 01 00 00	 push	 458			; 000001caH
  000fb	68 00 00 00 00	 push	 OFFSET ??_C@_1CE@JNGLIEDD@?$AA?4?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAc?$AAp?$AAp?$AA?$AA@
  00100	6a 00		 push	 0
  00102	e8 00 00 00 00	 call	 ?_ErrorBox@@YAXPAUHWND__@@PB_WHABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; _ErrorBox
  00107	83 c4 10	 add	 esp, 16			; 00000010H
  0010a	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  0010e	8d 8d 18 ff ff
	ff		 lea	 ecx, DWORD PTR $T355003[ebp]
  00114	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> >
  00119	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00120	8d 8d 3c ff ff
	ff		 lea	 ecx, DWORD PTR $T355001[ebp]
  00126	e8 00 00 00 00	 call	 ??1MakeString@@QAE@XZ

; 459  :         return 0;

  0012b	33 c0		 xor	 eax, eax
  0012d	e9 ed 01 00 00	 jmp	 $LN24@FindFreque
$LN21@FindFreque:

; 460  :     }
; 461  : 
; 462  :     int       MaxTuneDelay = 0;

  00132	c7 45 e8 00 00
	00 00		 mov	 DWORD PTR _MaxTuneDelay$[ebp], 0

; 463  : 
; 464  :     switch(currentSource->GetTunerId())

  00139	8b 55 ec	 mov	 edx, DWORD PTR _currentSource$[ebp]
  0013c	8b 02		 mov	 eax, DWORD PTR [edx]
  0013e	8b 4d ec	 mov	 ecx, DWORD PTR _currentSource$[ebp]
  00141	8b 50 60	 mov	 edx, DWORD PTR [eax+96]
  00144	ff d2		 call	 edx
  00146	89 85 fc fe ff
	ff		 mov	 DWORD PTR tv133[ebp], eax
  0014c	8b 85 fc fe ff
	ff		 mov	 eax, DWORD PTR tv133[ebp]
  00152	83 e8 21	 sub	 eax, 33			; 00000021H
  00155	89 85 fc fe ff
	ff		 mov	 DWORD PTR tv133[ebp], eax
  0015b	83 bd fc fe ff
	ff 0d		 cmp	 DWORD PTR tv133[ebp], 13 ; 0000000dH
  00162	77 1d		 ja	 SHORT $LN17@FindFreque
  00164	8b 8d fc fe ff
	ff		 mov	 ecx, DWORD PTR tv133[ebp]
  0016a	0f b6 91 00 00
	00 00		 movzx	 edx, BYTE PTR $LN29@FindFreque[ecx]
  00171	ff 24 95 00 00
	00 00		 jmp	 DWORD PTR $LN31@FindFreque[edx*4]
$LN18@FindFreque:

; 465  :     {
; 466  :         // The MT2032 is a silicon tuner and tunes real fast, no delay needed at this point.
; 467  :         // Even channels with interference and snow are tuned and detected in about max 80ms,
; 468  :         // so 120ms seems to be a safe value.
; 469  :     case TUNER_MT2032:
; 470  :     case TUNER_MT2032_PAL:
; 471  :     case TUNER_MT2050:
; 472  :     case TUNER_MT2050_PAL:
; 473  :         MaxTuneDelay = 120;

  00178	c7 45 e8 78 00
	00 00		 mov	 DWORD PTR _MaxTuneDelay$[ebp], 120 ; 00000078H

; 474  :         break;

  0017f	eb 0f		 jmp	 SHORT $LN19@FindFreque
$LN17@FindFreque:

; 475  :     default:
; 476  :         MaxTuneDelay = 225;

  00181	c7 45 e8 e1 00
	00 00		 mov	 DWORD PTR _MaxTuneDelay$[ebp], 225 ; 000000e1H

; 477  :         Sleep(100);

  00188	6a 64		 push	 100			; 00000064H
  0018a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4
$LN19@FindFreque:

; 478  :         break;
; 479  :     }
; 480  : 
; 481  :     int       StartTick = 0;

  00190	c7 45 c8 00 00
	00 00		 mov	 DWORD PTR _StartTick$[ebp], 0

; 482  :     int       ElapsedTicks = 0;

  00197	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR _ElapsedTicks$[ebp], 0

; 483  : 
; 484  :     StartTick = GetTickCount();

  0019e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetTickCount@0
  001a4	89 45 c8	 mov	 DWORD PTR _StartTick$[ebp], eax
$LN16@FindFreque:

; 485  :     while (currentSource->IsVideoPresent() == FALSE)

  001a7	8b 45 ec	 mov	 eax, DWORD PTR _currentSource$[ebp]
  001aa	8b 10		 mov	 edx, DWORD PTR [eax]
  001ac	8b 4d ec	 mov	 ecx, DWORD PTR _currentSource$[ebp]
  001af	8b 82 94 00 00
	00		 mov	 eax, DWORD PTR [edx+148]
  001b5	ff d0		 call	 eax
  001b7	85 c0		 test	 eax, eax
  001b9	75 20		 jne	 SHORT $LN15@FindFreque

; 486  :     {
; 487  : 
; 488  :         if(ElapsedTicks > MaxTuneDelay)

  001bb	8b 4d f0	 mov	 ecx, DWORD PTR _ElapsedTicks$[ebp]
  001be	3b 4d e8	 cmp	 ecx, DWORD PTR _MaxTuneDelay$[ebp]
  001c1	7e 02		 jle	 SHORT $LN14@FindFreque

; 489  :         {
; 490  :             break;

  001c3	eb 16		 jmp	 SHORT $LN15@FindFreque
$LN14@FindFreque:

; 491  :         }
; 492  : 
; 493  :         ElapsedTicks = GetTickCount() - StartTick;

  001c5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetTickCount@0
  001cb	2b 45 c8	 sub	 eax, DWORD PTR _StartTick$[ebp]
  001ce	89 45 f0	 mov	 DWORD PTR _ElapsedTicks$[ebp], eax

; 494  :         Sleep(3);

  001d1	6a 03		 push	 3
  001d3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4

; 495  :     }

  001d9	eb cc		 jmp	 SHORT $LN16@FindFreque
$LN15@FindFreque:

; 496  : 
; 497  :     MSG msg;
; 498  :     while (PeekMessage(&msg, NULL, 0, 0xffffffff, PM_REMOVE) == TRUE)

  001db	6a 01		 push	 1
  001dd	6a ff		 push	 -1
  001df	6a 00		 push	 0
  001e1	6a 00		 push	 0
  001e3	8d 55 cc	 lea	 edx, DWORD PTR _msg$[ebp]
  001e6	52		 push	 edx
  001e7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PeekMessageW@20
  001ed	83 f8 01	 cmp	 eax, 1
  001f0	75 18		 jne	 SHORT $LN12@FindFreque

; 499  :     {
; 500  :         SendMessage(msg.hwnd, msg.message, msg.wParam, msg.lParam);

  001f2	8b 45 d8	 mov	 eax, DWORD PTR _msg$[ebp+12]
  001f5	50		 push	 eax
  001f6	8b 4d d4	 mov	 ecx, DWORD PTR _msg$[ebp+8]
  001f9	51		 push	 ecx
  001fa	8b 55 d0	 mov	 edx, DWORD PTR _msg$[ebp+4]
  001fd	52		 push	 edx
  001fe	8b 45 cc	 mov	 eax, DWORD PTR _msg$[ebp]
  00201	50		 push	 eax
  00202	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 501  :     }

  00208	eb d1		 jmp	 SHORT $LN15@FindFreque
$LN12@FindFreque:

; 502  : 
; 503  :     DWORD returnedFrequency = 0;

  0020a	c7 45 c4 00 00
	00 00		 mov	 DWORD PTR _returnedFrequency$[ebp], 0

; 504  :     if (currentSource->IsVideoPresent())

  00211	8b 4d ec	 mov	 ecx, DWORD PTR _currentSource$[ebp]
  00214	8b 11		 mov	 edx, DWORD PTR [ecx]
  00216	8b 4d ec	 mov	 ecx, DWORD PTR _currentSource$[ebp]
  00219	8b 82 94 00 00
	00		 mov	 eax, DWORD PTR [edx+148]
  0021f	ff d0		 call	 eax
  00221	85 c0		 test	 eax, eax
  00223	0f 84 ec 00 00
	00		 je	 $LN11@FindFreque

; 505  :     {
; 506  :         if (dwAFCFrequencyDeviationThreshold > 0)

  00229	83 7d 10 00	 cmp	 DWORD PTR _dwAFCFrequencyDeviationThreshold$[ebp], 0
  0022d	0f 86 da 00 00
	00		 jbe	 $LN10@FindFreque

; 507  :         {
; 508  :             long afcDeviation = 0;

  00233	c7 45 c0 00 00
	00 00		 mov	 DWORD PTR _afcDeviation$144049[ebp], 0

; 509  :             eTunerAFCStatus afcStatus = currentSource->GetTuner()->GetAFCStatus(afcDeviation);

  0023a	8d 8d 10 ff ff
	ff		 lea	 ecx, DWORD PTR $T355004[ebp]
  00240	51		 push	 ecx
  00241	8b 55 ec	 mov	 edx, DWORD PTR _currentSource$[ebp]
  00244	8b 02		 mov	 eax, DWORD PTR [edx]
  00246	8b 4d ec	 mov	 ecx, DWORD PTR _currentSource$[ebp]
  00249	8b 90 cc 00 00
	00		 mov	 edx, DWORD PTR [eax+204]
  0024f	ff d2		 call	 edx
  00251	89 85 f8 fe ff
	ff		 mov	 DWORD PTR tv90[ebp], eax
  00257	8b 85 f8 fe ff
	ff		 mov	 eax, DWORD PTR tv90[ebp]
  0025d	89 85 f4 fe ff
	ff		 mov	 DWORD PTR tv191[ebp], eax
  00263	c7 45 fc 02 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 2
  0026a	8b 8d f4 fe ff
	ff		 mov	 ecx, DWORD PTR tv191[ebp]
  00270	e8 00 00 00 00	 call	 ??C?$SmartPtr@VITuner@@@@QBEPAVITuner@@XZ ; SmartPtr<ITuner>::operator->
  00275	89 85 f0 fe ff
	ff		 mov	 DWORD PTR tv174[ebp], eax
  0027b	8d 4d c0	 lea	 ecx, DWORD PTR _afcDeviation$144049[ebp]
  0027e	51		 push	 ecx
  0027f	8b 95 f0 fe ff
	ff		 mov	 edx, DWORD PTR tv174[ebp]
  00285	8b 02		 mov	 eax, DWORD PTR [edx]
  00287	8b 8d f0 fe ff
	ff		 mov	 ecx, DWORD PTR tv174[ebp]
  0028d	8b 50 24	 mov	 edx, DWORD PTR [eax+36]
  00290	ff d2		 call	 edx
  00292	89 45 bc	 mov	 DWORD PTR _afcStatus$144050[ebp], eax
  00295	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0029c	8d 8d 10 ff ff
	ff		 lea	 ecx, DWORD PTR $T355004[ebp]
  002a2	e8 00 00 00 00	 call	 ??1?$SmartPtr@VITuner@@@@QAE@XZ ; SmartPtr<ITuner>::~SmartPtr<ITuner>

; 510  :             switch (afcStatus)

  002a7	8b 45 bc	 mov	 eax, DWORD PTR _afcStatus$144050[ebp]
  002aa	89 85 ec fe ff
	ff		 mov	 DWORD PTR tv179[ebp], eax
  002b0	83 bd ec fe ff
	ff ff		 cmp	 DWORD PTR tv179[ebp], -1
  002b7	74 14		 je	 SHORT $LN7@FindFreque
  002b9	83 bd ec fe ff
	ff 00		 cmp	 DWORD PTR tv179[ebp], 0
  002c0	74 13		 je	 SHORT $LN6@FindFreque
  002c2	83 bd ec fe ff
	ff 01		 cmp	 DWORD PTR tv179[ebp], 1
  002c9	74 13		 je	 SHORT $LN5@FindFreque
  002cb	eb 37		 jmp	 SHORT $LN3@FindFreque
$LN7@FindFreque:

; 511  :             {
; 512  :                 case TUNER_AFC_NOTSUPPORTED :
; 513  :                     {
; 514  :                         //we should have tested this and disabled the checkbox
; 515  :                         //before...
; 516  :                         //Use normal behaviour
; 517  :                         returnedFrequency = Freq;

  002cd	8b 4d 08	 mov	 ecx, DWORD PTR _Freq$[ebp]
  002d0	89 4d c4	 mov	 DWORD PTR _returnedFrequency$[ebp], ecx

; 518  :                     }
; 519  :                     break;

  002d3	eb 36		 jmp	 SHORT $LN8@FindFreque
$LN6@FindFreque:

; 520  : 
; 521  :                 case TUNER_AFC_NOCARRIER :
; 522  :                     {
; 523  :                         //nothing here
; 524  :                         returnedFrequency = 0;

  002d5	c7 45 c4 00 00
	00 00		 mov	 DWORD PTR _returnedFrequency$[ebp], 0

; 525  :                     }
; 526  :                     break;

  002dc	eb 2d		 jmp	 SHORT $LN8@FindFreque
$LN5@FindFreque:

; 527  : 
; 528  :                 case TUNER_AFC_CARRIER :
; 529  :                     {
; 530  :                         //Deviation
; 531  :                         //Generic tuner : -125000, -62500, 0, +62500, + 125000
; 532  :                         //(0 is a mostly a hit)
; 533  :                         //CMT2032 : actual deviation
; 534  : 
; 535  :                         //For the time being, we do not handle a user setting
; 536  :                         //for this, so we'll use the freq steps set in the dialog box
; 537  :                         if (afcDeviation < dwAFCFrequencyDeviationThreshold)

  002de	8b 55 c0	 mov	 edx, DWORD PTR _afcDeviation$144049[ebp]
  002e1	3b 55 10	 cmp	 edx, DWORD PTR _dwAFCFrequencyDeviationThreshold$[ebp]
  002e4	73 1c		 jae	 SHORT $LN4@FindFreque

; 538  :                         {
; 539  :                             _stprintf(sbuf, _T("Find_Frequency AFC Hit->freq=%d\n"), Freq);

  002e6	8b 45 08	 mov	 eax, DWORD PTR _Freq$[ebp]
  002e9	50		 push	 eax
  002ea	68 00 00 00 00	 push	 OFFSET ??_C@_1EC@BLMLIIIO@?$AAF?$AAi?$AAn?$AAd?$AA_?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAA?$AAF?$AAC?$AA?5?$AAH?$AAi?$AAt?$AA?9?$AA?$DO?$AAf?$AAr?$AAe?$AAq?$AA?$DN?$AA?$CF?$AAd?$AA?6@
  002ef	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??FindFrequency@@YAKKHK@Z@4PA_WA
  002f4	e8 00 00 00 00	 call	 __swprintf
  002f9	83 c4 0c	 add	 esp, 12			; 0000000cH

; 540  :                             LOGD(sbuf);
; 541  :                             returnedFrequency = Freq;

  002fc	8b 4d 08	 mov	 ecx, DWORD PTR _Freq$[ebp]
  002ff	89 4d c4	 mov	 DWORD PTR _returnedFrequency$[ebp], ecx
$LN4@FindFreque:

; 542  :                         }
; 543  :                     }
; 544  :                     break;

  00302	eb 07		 jmp	 SHORT $LN8@FindFreque
$LN3@FindFreque:

; 545  : 
; 546  :                 default :
; 547  :                     returnedFrequency = 0;

  00304	c7 45 c4 00 00
	00 00		 mov	 DWORD PTR _returnedFrequency$[ebp], 0
$LN8@FindFreque:

; 548  :                     break;
; 549  :             }
; 550  :         }//if use afc
; 551  :         else

  0030b	eb 06		 jmp	 SHORT $LN2@FindFreque
$LN10@FindFreque:

; 552  :         {
; 553  :             returnedFrequency = Freq;

  0030d	8b 55 08	 mov	 edx, DWORD PTR _Freq$[ebp]
  00310	89 55 c4	 mov	 DWORD PTR _returnedFrequency$[ebp], edx
$LN2@FindFreque:

; 554  :         }
; 555  : 
; 556  :     }//if video present
; 557  :     else

  00313	eb 07		 jmp	 SHORT $LN1@FindFreque
$LN11@FindFreque:

; 558  :     {
; 559  :         returnedFrequency = 0;

  00315	c7 45 c4 00 00
	00 00		 mov	 DWORD PTR _returnedFrequency$[ebp], 0
$LN1@FindFreque:

; 560  :     }
; 561  :     return returnedFrequency;

  0031c	8b 45 c4	 mov	 eax, DWORD PTR _returnedFrequency$[ebp]
$LN24@FindFreque:

; 562  : }

  0031f	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00322	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00329	59		 pop	 ecx
  0032a	8b e5		 mov	 esp, ebp
  0032c	5d		 pop	 ebp
  0032d	c3		 ret	 0
  0032e	8b ff		 npad	 2
$LN31@FindFreque:
  00330	00 00 00 00	 DD	 $LN18@FindFreque
  00334	00 00 00 00	 DD	 $LN17@FindFreque
$LN29@FindFreque:
  00338	00		 DB	 0
  00339	01		 DB	 1
  0033a	01		 DB	 1
  0033b	01		 DB	 1
  0033c	01		 DB	 1
  0033d	01		 DB	 1
  0033e	01		 DB	 1
  0033f	01		 DB	 1
  00340	01		 DB	 1
  00341	01		 DB	 1
  00342	00		 DB	 0
  00343	01		 DB	 1
  00344	00		 DB	 0
  00345	00		 DB	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?FindFrequency@@YAKKHK@Z$0:
  00000	8d 8d 3c ff ff
	ff		 lea	 ecx, DWORD PTR $T355001[ebp]
  00006	e9 00 00 00 00	 jmp	 ??1MakeString@@QAE@XZ
__unwindfunclet$?FindFrequency@@YAKKHK@Z$1:
  0000b	8d 8d 18 ff ff
	ff		 lea	 ecx, DWORD PTR $T355003[ebp]
  00011	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?FindFrequency@@YAKKHK@Z$2:
  00016	8d 8d 10 ff ff
	ff		 lea	 ecx, DWORD PTR $T355004[ebp]
  0001c	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VITuner@@@@QAE@XZ ; SmartPtr<ITuner>::~SmartPtr<ITuner>
__ehhandler$?FindFrequency@@YAKKHK@Z:
  00021	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00025	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00028	8b 8a f4 fe ff
	ff		 mov	 ecx, DWORD PTR [edx-268]
  0002e	33 c8		 xor	 ecx, eax
  00030	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00035	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?FindFrequency@@YAKKHK@Z
  0003a	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?FindFrequency@@YAKKHK@Z ENDP				; FindFrequency
PUBLIC	?Channel_SetCurrent@@YAXXZ			; Channel_SetCurrent
; Function compile flags: /Odtp
;	COMDAT ?Channel_SetCurrent@@YAXXZ
_TEXT	SEGMENT
?Channel_SetCurrent@@YAXXZ PROC				; Channel_SetCurrent, COMDAT

; 119  : {

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

; 120  :     Channel_Change(CurrentProgram);

  00003	6a 00		 push	 0
  00005	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0000a	50		 push	 eax
  0000b	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  00010	83 c4 08	 add	 esp, 8

; 121  : }

  00013	5d		 pop	 ebp
  00014	c3		 ret	 0
?Channel_SetCurrent@@YAXXZ ENDP				; Channel_SetCurrent
; Function compile flags: /Odtp
;	COMDAT ?CurrentProgram_OnChange@@YAHJ@Z
_TEXT	SEGMENT
_NewValue$ = 8						; size = 4
?CurrentProgram_OnChange@@YAHJ@Z PROC			; CurrentProgram_OnChange, COMDAT

; 1807 : {

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

; 1808 :     CurrentProgram = NewValue;

  00003	8b 45 08	 mov	 eax, DWORD PTR _NewValue$[ebp]
  00006	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 1809 :     Channel_Change(CurrentProgram);

  0000b	6a 00		 push	 0
  0000d	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00013	51		 push	 ecx
  00014	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  00019	83 c4 08	 add	 esp, 8

; 1810 :     return FALSE;

  0001c	33 c0		 xor	 eax, eax

; 1811 : }

  0001e	5d		 pop	 ebp
  0001f	c3		 ret	 0
?CurrentProgram_OnChange@@YAHJ@Z ENDP			; CurrentProgram_OnChange
_TEXT	ENDS
PUBLIC	?ProcessProgramSelection@@YAHPAUHWND__@@G@Z	; ProcessProgramSelection
; Function compile flags: /Odtp
;	COMDAT ?ProcessProgramSelection@@YAHPAUHWND__@@G@Z
_TEXT	SEGMENT
tv70 = -12						; size = 4
_channelIndex$144860 = -8				; size = 4
_j$ = -4						; size = 4
_hWnd$ = 8						; size = 4
_wMenuID$ = 12						; size = 2
?ProcessProgramSelection@@YAHPAUHWND__@@G@Z PROC	; ProcessProgramSelection, COMDAT

; 1777 : {

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

; 1778 :     int j = 0;

  00006	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR _j$[ebp], 0

; 1779 :     if ( (wMenuID >= IDM_CHANNEL_SELECT) && (wMenuID < (IDM_CHANNEL_SELECT+MAX_CHANNELS)) )

  0000d	0f b7 45 0c	 movzx	 eax, WORD PTR _wMenuID$[ebp]
  00011	3d 63 06 00 00	 cmp	 eax, 1635		; 00000663H
  00016	0f 8c e7 00 00
	00		 jl	 $LN8@ProcessPro@2
  0001c	0f b7 4d 0c	 movzx	 ecx, WORD PTR _wMenuID$[ebp]
  00020	81 f9 62 07 00
	00		 cmp	 ecx, 1890		; 00000762H
  00026	0f 8d d7 00 00
	00		 jge	 $LN8@ProcessPro@2

; 1780 :     {
; 1781 :         if (Providers_GetCurrentSource()->IsInTunerMode())

  0002c	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00031	89 45 f4	 mov	 DWORD PTR tv70[ebp], eax
  00034	8b 55 f4	 mov	 edx, DWORD PTR tv70[ebp]
  00037	8b 02		 mov	 eax, DWORD PTR [edx]
  00039	8b 4d f4	 mov	 ecx, DWORD PTR tv70[ebp]
  0003c	8b 50 68	 mov	 edx, DWORD PTR [eax+104]
  0003f	ff d2		 call	 edx
  00041	85 c0		 test	 eax, eax
  00043	0f 84 87 00 00
	00		 je	 $LN7@ProcessPro@2

; 1782 :         {
; 1783 :             for (int channelIndex = 0; channelIndex < MyChannels.GetSize() && (j < MAX_CHANNELS); channelIndex++)

  00049	c7 45 f8 00 00
	00 00		 mov	 DWORD PTR _channelIndex$144860[ebp], 0
  00050	eb 09		 jmp	 SHORT $LN6@ProcessPro@2
$LN5@ProcessPro@2:
  00052	8b 45 f8	 mov	 eax, DWORD PTR _channelIndex$144860[ebp]
  00055	83 c0 01	 add	 eax, 1
  00058	89 45 f8	 mov	 DWORD PTR _channelIndex$144860[ebp], eax
$LN6@ProcessPro@2:
  0005b	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00060	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00065	39 45 f8	 cmp	 DWORD PTR _channelIndex$144860[ebp], eax
  00068	7d 64		 jge	 SHORT $LN4@ProcessPro@2
  0006a	81 7d fc ff 00
	00 00		 cmp	 DWORD PTR _j$[ebp], 255	; 000000ffH
  00071	7d 5b		 jge	 SHORT $LN4@ProcessPro@2

; 1784 :             {
; 1785 :                 if ((MyChannels.GetChannel(channelIndex)->GetFrequency() != 0) && MyChannels.GetChannel(channelIndex)->IsActive())

  00073	8b 4d f8	 mov	 ecx, DWORD PTR _channelIndex$144860[ebp]
  00076	51		 push	 ecx
  00077	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0007c	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00081	8b c8		 mov	 ecx, eax
  00083	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  00088	85 c0		 test	 eax, eax
  0008a	74 40		 je	 SHORT $LN3@ProcessPro@2
  0008c	8b 55 f8	 mov	 edx, DWORD PTR _channelIndex$144860[ebp]
  0008f	52		 push	 edx
  00090	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00095	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0009a	8b c8		 mov	 ecx, eax
  0009c	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  000a1	85 c0		 test	 eax, eax
  000a3	74 27		 je	 SHORT $LN3@ProcessPro@2

; 1786 :                 {
; 1787 :                     if ((wMenuID - IDM_CHANNEL_SELECT) == j)

  000a5	0f b7 45 0c	 movzx	 eax, WORD PTR _wMenuID$[ebp]
  000a9	2d 63 06 00 00	 sub	 eax, 1635		; 00000663H
  000ae	3b 45 fc	 cmp	 eax, DWORD PTR _j$[ebp]
  000b1	75 10		 jne	 SHORT $LN2@ProcessPro@2

; 1788 :                     {
; 1789 :                         Channel_Change(channelIndex);

  000b3	6a 00		 push	 0
  000b5	8b 4d f8	 mov	 ecx, DWORD PTR _channelIndex$144860[ebp]
  000b8	51		 push	 ecx
  000b9	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  000be	83 c4 08	 add	 esp, 8

; 1790 :                         break;

  000c1	eb 0b		 jmp	 SHORT $LN4@ProcessPro@2
$LN2@ProcessPro@2:

; 1791 :                     }
; 1792 :                     j++;

  000c3	8b 55 fc	 mov	 edx, DWORD PTR _j$[ebp]
  000c6	83 c2 01	 add	 edx, 1
  000c9	89 55 fc	 mov	 DWORD PTR _j$[ebp], edx
$LN3@ProcessPro@2:

; 1793 :                 }
; 1794 :             }//for each channel

  000cc	eb 84		 jmp	 SHORT $LN5@ProcessPro@2
$LN4@ProcessPro@2:

; 1795 :         }
; 1796 :         else

  000ce	eb 2c		 jmp	 SHORT $LN1@ProcessPro@2
$LN7@ProcessPro@2:

; 1797 :         {
; 1798 :             SendMessage(hWnd, WM_COMMAND, IDM_SOURCE_INPUT1, 0);

  000d0	6a 00		 push	 0
  000d2	68 41 04 00 00	 push	 1089			; 00000441H
  000d7	68 11 01 00 00	 push	 273			; 00000111H
  000dc	8b 45 08	 mov	 eax, DWORD PTR _hWnd$[ebp]
  000df	50		 push	 eax
  000e0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 1799 :             SendMessage(hWnd, WM_COMMAND, wMenuID, 0);

  000e6	6a 00		 push	 0
  000e8	0f b7 4d 0c	 movzx	 ecx, WORD PTR _wMenuID$[ebp]
  000ec	51		 push	 ecx
  000ed	68 11 01 00 00	 push	 273			; 00000111H
  000f2	8b 55 08	 mov	 edx, DWORD PTR _hWnd$[ebp]
  000f5	52		 push	 edx
  000f6	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN1@ProcessPro@2:

; 1800 :         }
; 1801 :         return TRUE;

  000fc	b8 01 00 00 00	 mov	 eax, 1
  00101	eb 02		 jmp	 SHORT $LN9@ProcessPro@2
$LN8@ProcessPro@2:

; 1802 :     }
; 1803 :     return FALSE;

  00103	33 c0		 xor	 eax, eax
$LN9@ProcessPro@2:

; 1804 : }

  00105	8b e5		 mov	 esp, ebp
  00107	5d		 pop	 ebp
  00108	c3		 ret	 0
?ProcessProgramSelection@@YAHPAUHWND__@@G@Z ENDP	; ProcessProgramSelection
_TEXT	ENDS
PUBLIC	?Channel_ChangeToNumber@@YAXHH@Z		; Channel_ChangeToNumber
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_ChangeToNumber@@YAXHH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_ChangeToNumber@@YAXHH@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_ChangeToNumber@@YAXHH@Z$1
__ehfuncinfo$?Channel_ChangeToNumber@@YAXHH@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?Channel_ChangeToNumber@@YAXHH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_ChangeToNumber@@YAXHH@Z
_TEXT	SEGMENT
$T359144 = -76						; size = 28
$T359143 = -48						; size = 28
_j$144803 = -20						; size = 4
_found$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_ChannelNumber$ = 8					; size = 4
_DontStorePrevious$ = 12				; size = 4
?Channel_ChangeToNumber@@YAXHH@Z PROC			; Channel_ChangeToNumber, COMDAT

; 1651 : {

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

; 1652 :     BOOL found = FALSE;

  00025	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR _found$[ebp], 0

; 1653 : 
; 1654 :     if (SCAN_MODE_CUSTOM_ORDER == MyScanMode)

  0002c	83 3d 00 00 00
	00 01		 cmp	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, 1 ; MyScanMode
  00033	75 67		 jne	 SHORT $LN8@Channel_Ch@2

; 1655 :     {
; 1656 :         // Find the channel the user typed.
; 1657 :         for (int j = 0; j < MyChannels.GetSize(); ++j)

  00035	c7 45 ec 00 00
	00 00		 mov	 DWORD PTR _j$144803[ebp], 0
  0003c	eb 09		 jmp	 SHORT $LN7@Channel_Ch@2
$LN6@Channel_Ch@2:
  0003e	8b 45 ec	 mov	 eax, DWORD PTR _j$144803[ebp]
  00041	83 c0 01	 add	 eax, 1
  00044	89 45 ec	 mov	 DWORD PTR _j$144803[ebp], eax
$LN7@Channel_Ch@2:
  00047	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0004c	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00051	39 45 ec	 cmp	 DWORD PTR _j$144803[ebp], eax
  00054	7d 44		 jge	 SHORT $LN5@Channel_Ch@2

; 1658 :         {
; 1659 :             if (MyChannels.GetChannel(j)->GetFrequency() != 0 && int(MyChannels.GetChannel(j)->GetChannelNumber()) == ChannelNumber)

  00056	8b 4d ec	 mov	 ecx, DWORD PTR _j$144803[ebp]
  00059	51		 push	 ecx
  0005a	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0005f	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00064	8b c8		 mov	 ecx, eax
  00066	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  0006b	85 c0		 test	 eax, eax
  0006d	74 29		 je	 SHORT $LN4@Channel_Ch@2
  0006f	8b 55 ec	 mov	 edx, DWORD PTR _j$144803[ebp]
  00072	52		 push	 edx
  00073	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00078	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0007d	8b c8		 mov	 ecx, eax
  0007f	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  00084	3b 45 08	 cmp	 eax, DWORD PTR _ChannelNumber$[ebp]
  00087	75 0f		 jne	 SHORT $LN4@Channel_Ch@2

; 1660 :             {
; 1661 :                 found = TRUE;

  00089	c7 45 f0 01 00
	00 00		 mov	 DWORD PTR _found$[ebp], 1

; 1662 :                 ChannelNumber = j;

  00090	8b 45 ec	 mov	 eax, DWORD PTR _j$144803[ebp]
  00093	89 45 08	 mov	 DWORD PTR _ChannelNumber$[ebp], eax

; 1663 :                 break;

  00096	eb 02		 jmp	 SHORT $LN5@Channel_Ch@2
$LN4@Channel_Ch@2:

; 1664 :             }
; 1665 :         }

  00098	eb a4		 jmp	 SHORT $LN6@Channel_Ch@2
$LN5@Channel_Ch@2:

; 1666 :     }
; 1667 :     else

  0009a	eb 10		 jmp	 SHORT $LN3@Channel_Ch@2
$LN8@Channel_Ch@2:

; 1668 :     {
; 1669 :         found = TRUE;

  0009c	c7 45 f0 01 00
	00 00		 mov	 DWORD PTR _found$[ebp], 1

; 1670 :         ChannelNumber = ChannelNumber - 1;

  000a3	8b 4d 08	 mov	 ecx, DWORD PTR _ChannelNumber$[ebp]
  000a6	83 e9 01	 sub	 ecx, 1
  000a9	89 4d 08	 mov	 DWORD PTR _ChannelNumber$[ebp], ecx
$LN3@Channel_Ch@2:

; 1671 :     }
; 1672 : 
; 1673 :     if (found)

  000ac	83 7d f0 00	 cmp	 DWORD PTR _found$[ebp], 0
  000b0	74 12		 je	 SHORT $LN2@Channel_Ch@2

; 1674 :     {
; 1675 :         Channel_Change(ChannelNumber, DontStorePrevious);

  000b2	8b 55 0c	 mov	 edx, DWORD PTR _DontStorePrevious$[ebp]
  000b5	52		 push	 edx
  000b6	8b 45 08	 mov	 eax, DWORD PTR _ChannelNumber$[ebp]
  000b9	50		 push	 eax
  000ba	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  000bf	83 c4 08	 add	 esp, 8

; 1676 :     }
; 1677 :     else

  000c2	eb 6c		 jmp	 SHORT $LN1@Channel_Ch@2
$LN2@Channel_Ch@2:

; 1678 :     {
; 1679 :         StatusBar_ShowText(STATUS_TEXT, _T("Not Found"));

  000c4	68 00 00 00 00	 push	 OFFSET ??_C@_1BE@JGBFLIBK@?$AAN?$AAo?$AAt?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?$AA@
  000c9	8d 4d d0	 lea	 ecx, DWORD PTR $T359143[ebp]
  000cc	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  000d1	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  000d8	8d 4d d0	 lea	 ecx, DWORD PTR $T359143[ebp]
  000db	51		 push	 ecx
  000dc	6a 00		 push	 0
  000de	e8 00 00 00 00	 call	 ?StatusBar_ShowText@@YAXW4eStatusBarBox@@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; StatusBar_ShowText
  000e3	83 c4 08	 add	 esp, 8
  000e6	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000ed	8d 4d d0	 lea	 ecx, DWORD PTR $T359143[ebp]
  000f0	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> >

; 1680 :         OSD_ShowText(_T("Not Found"), 0);

  000f5	68 00 00 00 00	 push	 OFFSET ??_C@_1BE@JGBFLIBK@?$AAN?$AAo?$AAt?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?$AA@
  000fa	8d 4d b4	 lea	 ecx, DWORD PTR $T359144[ebp]
  000fd	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00102	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  00109	6a 00		 push	 0
  0010b	6a 00		 push	 0
  0010d	83 ec 08	 sub	 esp, 8
  00110	d9 ee		 fldz
  00112	dd 1c 24	 fstp	 QWORD PTR [esp]
  00115	8d 55 b4	 lea	 edx, DWORD PTR $T359144[ebp]
  00118	52		 push	 edx
  00119	e8 00 00 00 00	 call	 ?OSD_ShowText@@YAXABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@NHH@Z ; OSD_ShowText
  0011e	83 c4 14	 add	 esp, 20			; 00000014H
  00121	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00128	8d 4d b4	 lea	 ecx, DWORD PTR $T359144[ebp]
  0012b	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN1@Channel_Ch@2:

; 1681 :     }
; 1682 : }

  00130	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00133	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0013a	59		 pop	 ecx
  0013b	8b e5		 mov	 esp, ebp
  0013d	5d		 pop	 ebp
  0013e	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_ChangeToNumber@@YAXHH@Z$0:
  00000	8d 4d d0	 lea	 ecx, DWORD PTR $T359143[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_ChangeToNumber@@YAXHH@Z$1:
  00008	8d 4d b4	 lea	 ecx, DWORD PTR $T359144[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?Channel_ChangeToNumber@@YAXHH@Z:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a bc	 mov	 ecx, DWORD PTR [edx-68]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_ChangeToNumber@@YAXHH@Z
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_ChangeToNumber@@YAXHH@Z ENDP			; Channel_ChangeToNumber
PUBLIC	?Channel_Previous@@YAXXZ			; Channel_Previous
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_Previous@@YAXXZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Previous@@YAXXZ$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Previous@@YAXXZ$1
__ehfuncinfo$?Channel_Previous@@YAXXZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?Channel_Previous@@YAXXZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_Previous@@YAXXZ
_TEXT	SEGMENT
$T359156 = -68						; size = 28
$T359155 = -40						; size = 28
__$EHRec$ = -12						; size = 12
?Channel_Previous@@YAXXZ PROC				; Channel_Previous, COMDAT

; 1634 : {

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

; 1635 :     if(MyChannels.GetSize() > 0)

  00025	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0002a	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0002f	85 c0		 test	 eax, eax
  00031	7e 2e		 jle	 SHORT $LN3@Channel_Pr

; 1636 :     {
; 1637 :         if (MyChannels.GetChannel(PreviousProgram)->GetFrequency() != 0)

  00033	a1 00 00 00 00	 mov	 eax, DWORD PTR ?PreviousProgram@@3JA ; PreviousProgram
  00038	50		 push	 eax
  00039	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0003e	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00043	8b c8		 mov	 ecx, eax
  00045	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  0004a	85 c0		 test	 eax, eax
  0004c	74 11		 je	 SHORT $LN2@Channel_Pr

; 1638 :         {
; 1639 :             Channel_Change(PreviousProgram);

  0004e	6a 00		 push	 0
  00050	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?PreviousProgram@@3JA ; PreviousProgram
  00056	51		 push	 ecx
  00057	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  0005c	83 c4 08	 add	 esp, 8
$LN2@Channel_Pr:

; 1640 :         }
; 1641 :     }
; 1642 :     else

  0005f	eb 6c		 jmp	 SHORT $LN1@Channel_Pr
$LN3@Channel_Pr:

; 1643 :     {
; 1644 :         StatusBar_ShowText(STATUS_TEXT, _T("No Channels"));

  00061	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
  00066	8d 4d d8	 lea	 ecx, DWORD PTR $T359155[ebp]
  00069	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0006e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00075	8d 55 d8	 lea	 edx, DWORD PTR $T359155[ebp]
  00078	52		 push	 edx
  00079	6a 00		 push	 0
  0007b	e8 00 00 00 00	 call	 ?StatusBar_ShowText@@YAXW4eStatusBarBox@@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; StatusBar_ShowText
  00080	83 c4 08	 add	 esp, 8
  00083	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0008a	8d 4d d8	 lea	 ecx, DWORD PTR $T359155[ebp]
  0008d	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> >

; 1645 :         OSD_ShowText(_T("No Channels"), 0);

  00092	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
  00097	8d 4d bc	 lea	 ecx, DWORD PTR $T359156[ebp]
  0009a	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0009f	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  000a6	6a 00		 push	 0
  000a8	6a 00		 push	 0
  000aa	83 ec 08	 sub	 esp, 8
  000ad	d9 ee		 fldz
  000af	dd 1c 24	 fstp	 QWORD PTR [esp]
  000b2	8d 45 bc	 lea	 eax, DWORD PTR $T359156[ebp]
  000b5	50		 push	 eax
  000b6	e8 00 00 00 00	 call	 ?OSD_ShowText@@YAXABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@NHH@Z ; OSD_ShowText
  000bb	83 c4 14	 add	 esp, 20			; 00000014H
  000be	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000c5	8d 4d bc	 lea	 ecx, DWORD PTR $T359156[ebp]
  000c8	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN1@Channel_Pr:

; 1646 :     }
; 1647 : 
; 1648 : }

  000cd	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  000d0	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  000d7	59		 pop	 ecx
  000d8	8b e5		 mov	 esp, ebp
  000da	5d		 pop	 ebp
  000db	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_Previous@@YAXXZ$0:
  00000	8d 4d d8	 lea	 ecx, DWORD PTR $T359155[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_Previous@@YAXXZ$1:
  00008	8d 4d bc	 lea	 ecx, DWORD PTR $T359156[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?Channel_Previous@@YAXXZ:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a c4	 mov	 ecx, DWORD PTR [edx-60]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_Previous@@YAXXZ
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_Previous@@YAXXZ ENDP				; Channel_Previous
PUBLIC	?Channel_Decrement@@YAXXZ			; Channel_Decrement
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_Decrement@@YAXXZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Decrement@@YAXXZ$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Decrement@@YAXXZ$1
__ehfuncinfo$?Channel_Decrement@@YAXXZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?Channel_Decrement@@YAXXZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_Decrement@@YAXXZ
_TEXT	SEGMENT
$T359168 = -72						; size = 28
$T359167 = -44						; size = 28
_CurrentProg$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
?Channel_Decrement@@YAXXZ PROC				; Channel_Decrement, COMDAT

; 1592 : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Channel_Decrement@@YAXXZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 3c	 sub	 esp, 60			; 0000003cH
  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

; 1593 :     int CurrentProg;
; 1594 : 
; 1595 :     if(MyChannels.GetSize() > 0)

  00025	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0002a	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0002f	85 c0		 test	 eax, eax
  00031	0f 8e a1 00 00
	00		 jle	 $LN8@Channel_De@3

; 1596 :     {
; 1597 :         CurrentProg = CurrentProgram;

  00037	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0003c	89 45 f0	 mov	 DWORD PTR _CurrentProg$[ebp], eax

; 1598 :         PreviousProgram = CurrentProg;

  0003f	8b 4d f0	 mov	 ecx, DWORD PTR _CurrentProg$[ebp]
  00042	89 0d 00 00 00
	00		 mov	 DWORD PTR ?PreviousProgram@@3JA, ecx ; PreviousProgram

; 1599 :         // look for next active channel
; 1600 :         --CurrentProg;

  00048	8b 55 f0	 mov	 edx, DWORD PTR _CurrentProg$[ebp]
  0004b	83 ea 01	 sub	 edx, 1
  0004e	89 55 f0	 mov	 DWORD PTR _CurrentProg$[ebp], edx
$LN7@Channel_De@3:

; 1601 :         while(CurrentProg > -1 &&
; 1602 :             !MyChannels.GetChannel(CurrentProg)->IsActive())

  00051	83 7d f0 ff	 cmp	 DWORD PTR _CurrentProg$[ebp], -1
  00055	7e 24		 jle	 SHORT $LN6@Channel_De@3
  00057	8b 45 f0	 mov	 eax, DWORD PTR _CurrentProg$[ebp]
  0005a	50		 push	 eax
  0005b	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00060	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00065	8b c8		 mov	 ecx, eax
  00067	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  0006c	85 c0		 test	 eax, eax
  0006e	75 0b		 jne	 SHORT $LN6@Channel_De@3

; 1603 :         {
; 1604 :             --CurrentProg;

  00070	8b 4d f0	 mov	 ecx, DWORD PTR _CurrentProg$[ebp]
  00073	83 e9 01	 sub	 ecx, 1
  00076	89 4d f0	 mov	 DWORD PTR _CurrentProg$[ebp], ecx

; 1605 :         }

  00079	eb d6		 jmp	 SHORT $LN7@Channel_De@3
$LN6@Channel_De@3:

; 1606 : 
; 1607 :         // see if we looped around
; 1608 :         if(CurrentProg == -1)

  0007b	83 7d f0 ff	 cmp	 DWORD PTR _CurrentProg$[ebp], -1
  0007f	75 47		 jne	 SHORT $LN2@Channel_De@3

; 1609 :         {
; 1610 :             CurrentProg = MyChannels.GetSize() - 1;

  00081	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00086	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0008b	83 e8 01	 sub	 eax, 1
  0008e	89 45 f0	 mov	 DWORD PTR _CurrentProg$[ebp], eax
$LN4@Channel_De@3:

; 1611 :             while(CurrentProg > -1  &&
; 1612 :                 !MyChannels.GetChannel(CurrentProg)->IsActive())

  00091	83 7d f0 ff	 cmp	 DWORD PTR _CurrentProg$[ebp], -1
  00095	7e 24		 jle	 SHORT $LN3@Channel_De@3
  00097	8b 55 f0	 mov	 edx, DWORD PTR _CurrentProg$[ebp]
  0009a	52		 push	 edx
  0009b	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  000a0	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  000a5	8b c8		 mov	 ecx, eax
  000a7	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  000ac	85 c0		 test	 eax, eax
  000ae	75 0b		 jne	 SHORT $LN3@Channel_De@3

; 1613 :             {
; 1614 :                 --CurrentProg;

  000b0	8b 45 f0	 mov	 eax, DWORD PTR _CurrentProg$[ebp]
  000b3	83 e8 01	 sub	 eax, 1
  000b6	89 45 f0	 mov	 DWORD PTR _CurrentProg$[ebp], eax

; 1615 :             }

  000b9	eb d6		 jmp	 SHORT $LN4@Channel_De@3
$LN3@Channel_De@3:

; 1616 : 
; 1617 :             // see if we looped around again
; 1618 :             if(CurrentProg == -1)

  000bb	83 7d f0 ff	 cmp	 DWORD PTR _CurrentProg$[ebp], -1
  000bf	75 07		 jne	 SHORT $LN2@Channel_De@3

; 1619 :             {
; 1620 :                 CurrentProg = 0;

  000c1	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR _CurrentProg$[ebp], 0
$LN2@Channel_De@3:

; 1621 :             }
; 1622 :         }
; 1623 : 
; 1624 :         Channel_Change(CurrentProg);

  000c8	6a 00		 push	 0
  000ca	8b 4d f0	 mov	 ecx, DWORD PTR _CurrentProg$[ebp]
  000cd	51		 push	 ecx
  000ce	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  000d3	83 c4 08	 add	 esp, 8

; 1625 :     }
; 1626 :     else

  000d6	eb 6c		 jmp	 SHORT $LN1@Channel_De@3
$LN8@Channel_De@3:

; 1627 :     {
; 1628 :         StatusBar_ShowText(STATUS_TEXT, _T("No Channels"));

  000d8	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
  000dd	8d 4d d4	 lea	 ecx, DWORD PTR $T359167[ebp]
  000e0	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  000e5	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  000ec	8d 55 d4	 lea	 edx, DWORD PTR $T359167[ebp]
  000ef	52		 push	 edx
  000f0	6a 00		 push	 0
  000f2	e8 00 00 00 00	 call	 ?StatusBar_ShowText@@YAXW4eStatusBarBox@@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; StatusBar_ShowText
  000f7	83 c4 08	 add	 esp, 8
  000fa	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00101	8d 4d d4	 lea	 ecx, DWORD PTR $T359167[ebp]
  00104	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> >

; 1629 :         OSD_ShowText(_T("No Channels"), 0);

  00109	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
  0010e	8d 4d b8	 lea	 ecx, DWORD PTR $T359168[ebp]
  00111	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00116	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  0011d	6a 00		 push	 0
  0011f	6a 00		 push	 0
  00121	83 ec 08	 sub	 esp, 8
  00124	d9 ee		 fldz
  00126	dd 1c 24	 fstp	 QWORD PTR [esp]
  00129	8d 45 b8	 lea	 eax, DWORD PTR $T359168[ebp]
  0012c	50		 push	 eax
  0012d	e8 00 00 00 00	 call	 ?OSD_ShowText@@YAXABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@NHH@Z ; OSD_ShowText
  00132	83 c4 14	 add	 esp, 20			; 00000014H
  00135	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0013c	8d 4d b8	 lea	 ecx, DWORD PTR $T359168[ebp]
  0013f	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN1@Channel_De@3:

; 1630 :     }
; 1631 : }

  00144	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00147	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0014e	59		 pop	 ecx
  0014f	8b e5		 mov	 esp, ebp
  00151	5d		 pop	 ebp
  00152	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_Decrement@@YAXXZ$0:
  00000	8d 4d d4	 lea	 ecx, DWORD PTR $T359167[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_Decrement@@YAXXZ$1:
  00008	8d 4d b8	 lea	 ecx, DWORD PTR $T359168[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?Channel_Decrement@@YAXXZ:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a c0	 mov	 ecx, DWORD PTR [edx-64]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_Decrement@@YAXXZ
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_Decrement@@YAXXZ ENDP				; Channel_Decrement
PUBLIC	?Channel_Increment@@YAXXZ			; Channel_Increment
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?Channel_Increment@@YAXXZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Increment@@YAXXZ$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?Channel_Increment@@YAXXZ$1
__ehfuncinfo$?Channel_Increment@@YAXXZ DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?Channel_Increment@@YAXXZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?Channel_Increment@@YAXXZ
_TEXT	SEGMENT
$T359180 = -72						; size = 28
$T359179 = -44						; size = 28
_CurrentProg$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
?Channel_Increment@@YAXXZ PROC				; Channel_Increment, COMDAT

; 1550 : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?Channel_Increment@@YAXXZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 3c	 sub	 esp, 60			; 0000003cH
  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

; 1551 :     int CurrentProg;
; 1552 : 
; 1553 :     if(MyChannels.GetSize() > 0)

  00025	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0002a	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0002f	85 c0		 test	 eax, eax
  00031	0f 8e bc 00 00
	00		 jle	 $LN8@Channel_In@2

; 1554 :     {
; 1555 :         CurrentProg = CurrentProgram;

  00037	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0003c	89 45 f0	 mov	 DWORD PTR _CurrentProg$[ebp], eax

; 1556 :         PreviousProgram = CurrentProg;

  0003f	8b 4d f0	 mov	 ecx, DWORD PTR _CurrentProg$[ebp]
  00042	89 0d 00 00 00
	00		 mov	 DWORD PTR ?PreviousProgram@@3JA, ecx ; PreviousProgram

; 1557 :         // look for next active channel
; 1558 :         ++CurrentProg;

  00048	8b 55 f0	 mov	 edx, DWORD PTR _CurrentProg$[ebp]
  0004b	83 c2 01	 add	 edx, 1
  0004e	89 55 f0	 mov	 DWORD PTR _CurrentProg$[ebp], edx
$LN7@Channel_In@2:

; 1559 :         while(CurrentProg < MyChannels.GetSize() &&
; 1560 :             !MyChannels.GetChannel(CurrentProg)->IsActive())

  00051	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00056	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0005b	39 45 f0	 cmp	 DWORD PTR _CurrentProg$[ebp], eax
  0005e	7d 24		 jge	 SHORT $LN6@Channel_In@2
  00060	8b 45 f0	 mov	 eax, DWORD PTR _CurrentProg$[ebp]
  00063	50		 push	 eax
  00064	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00069	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0006e	8b c8		 mov	 ecx, eax
  00070	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  00075	85 c0		 test	 eax, eax
  00077	75 0b		 jne	 SHORT $LN6@Channel_In@2

; 1561 :         {
; 1562 :             ++CurrentProg;

  00079	8b 4d f0	 mov	 ecx, DWORD PTR _CurrentProg$[ebp]
  0007c	83 c1 01	 add	 ecx, 1
  0007f	89 4d f0	 mov	 DWORD PTR _CurrentProg$[ebp], ecx

; 1563 :         }

  00082	eb cd		 jmp	 SHORT $LN7@Channel_In@2
$LN6@Channel_In@2:

; 1564 : 
; 1565 :         // see if we looped around
; 1566 :         if(CurrentProg == MyChannels.GetSize())

  00084	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00089	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0008e	39 45 f0	 cmp	 DWORD PTR _CurrentProg$[ebp], eax
  00091	75 50		 jne	 SHORT $LN2@Channel_In@2

; 1567 :         {
; 1568 :             CurrentProg = 0;

  00093	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR _CurrentProg$[ebp], 0
$LN4@Channel_In@2:

; 1569 :             while(CurrentProg < MyChannels.GetSize() &&
; 1570 :                 !MyChannels.GetChannel(CurrentProg)->IsActive())

  0009a	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0009f	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  000a4	39 45 f0	 cmp	 DWORD PTR _CurrentProg$[ebp], eax
  000a7	7d 24		 jge	 SHORT $LN3@Channel_In@2
  000a9	8b 55 f0	 mov	 edx, DWORD PTR _CurrentProg$[ebp]
  000ac	52		 push	 edx
  000ad	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  000b2	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  000b7	8b c8		 mov	 ecx, eax
  000b9	e8 00 00 00 00	 call	 ?IsActive@CChannel@@QBEHXZ ; CChannel::IsActive
  000be	85 c0		 test	 eax, eax
  000c0	75 0b		 jne	 SHORT $LN3@Channel_In@2

; 1571 :             {
; 1572 :                 ++CurrentProg;

  000c2	8b 45 f0	 mov	 eax, DWORD PTR _CurrentProg$[ebp]
  000c5	83 c0 01	 add	 eax, 1
  000c8	89 45 f0	 mov	 DWORD PTR _CurrentProg$[ebp], eax

; 1573 :             }

  000cb	eb cd		 jmp	 SHORT $LN4@Channel_In@2
$LN3@Channel_In@2:

; 1574 : 
; 1575 :             // see if we looped around again
; 1576 :             if(CurrentProg == MyChannels.GetSize())

  000cd	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  000d2	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  000d7	39 45 f0	 cmp	 DWORD PTR _CurrentProg$[ebp], eax
  000da	75 07		 jne	 SHORT $LN2@Channel_In@2

; 1577 :             {
; 1578 :                 CurrentProg = 0;

  000dc	c7 45 f0 00 00
	00 00		 mov	 DWORD PTR _CurrentProg$[ebp], 0
$LN2@Channel_In@2:

; 1579 :             }
; 1580 :         }
; 1581 : 
; 1582 :         Channel_Change(CurrentProg);

  000e3	6a 00		 push	 0
  000e5	8b 4d f0	 mov	 ecx, DWORD PTR _CurrentProg$[ebp]
  000e8	51		 push	 ecx
  000e9	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  000ee	83 c4 08	 add	 esp, 8

; 1583 :     }
; 1584 :     else

  000f1	eb 6c		 jmp	 SHORT $LN1@Channel_In@2
$LN8@Channel_In@2:

; 1585 :     {
; 1586 :         StatusBar_ShowText(STATUS_TEXT, _T("No Channels"));

  000f3	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
  000f8	8d 4d d4	 lea	 ecx, DWORD PTR $T359179[ebp]
  000fb	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00100	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00107	8d 55 d4	 lea	 edx, DWORD PTR $T359179[ebp]
  0010a	52		 push	 edx
  0010b	6a 00		 push	 0
  0010d	e8 00 00 00 00	 call	 ?StatusBar_ShowText@@YAXW4eStatusBarBox@@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; StatusBar_ShowText
  00112	83 c4 08	 add	 esp, 8
  00115	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0011c	8d 4d d4	 lea	 ecx, DWORD PTR $T359179[ebp]
  0011f	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> >

; 1587 :         OSD_ShowText(_T("No Channels"), 0);

  00124	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@HBEGMAH@?$AAN?$AAo?$AA?5?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?$AA@
  00129	8d 4d b8	 lea	 ecx, DWORD PTR $T359180[ebp]
  0012c	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@PB_W@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00131	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  00138	6a 00		 push	 0
  0013a	6a 00		 push	 0
  0013c	83 ec 08	 sub	 esp, 8
  0013f	d9 ee		 fldz
  00141	dd 1c 24	 fstp	 QWORD PTR [esp]
  00144	8d 45 b8	 lea	 eax, DWORD PTR $T359180[ebp]
  00147	50		 push	 eax
  00148	e8 00 00 00 00	 call	 ?OSD_ShowText@@YAXABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@NHH@Z ; OSD_ShowText
  0014d	83 c4 14	 add	 esp, 20			; 00000014H
  00150	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00157	8d 4d b8	 lea	 ecx, DWORD PTR $T359180[ebp]
  0015a	e8 00 00 00 00	 call	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
$LN1@Channel_In@2:

; 1588 :     }
; 1589 : }

  0015f	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00162	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00169	59		 pop	 ecx
  0016a	8b e5		 mov	 esp, ebp
  0016c	5d		 pop	 ebp
  0016d	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?Channel_Increment@@YAXXZ$0:
  00000	8d 4d d4	 lea	 ecx, DWORD PTR $T359179[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?Channel_Increment@@YAXXZ$1:
  00008	8d 4d b8	 lea	 ecx, DWORD PTR $T359180[ebp]
  0000b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__ehhandler$?Channel_Increment@@YAXXZ:
  00010	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00014	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00017	8b 4a c0	 mov	 ecx, DWORD PTR [edx-64]
  0001a	33 c8		 xor	 ecx, eax
  0001c	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00021	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?Channel_Increment@@YAXXZ
  00026	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?Channel_Increment@@YAXXZ ENDP				; Channel_Increment
PUBLIC	?Channel_Reset@@YAXXZ				; Channel_Reset
; Function compile flags: /Odtp
;	COMDAT ?Channel_Reset@@YAXXZ
_TEXT	SEGMENT
?Channel_Reset@@YAXXZ PROC				; Channel_Reset, COMDAT

; 1545 : {

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

; 1546 :     Channel_Change(CurrentProgram);

  00003	6a 00		 push	 0
  00005	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0000a	50		 push	 eax
  0000b	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  00010	83 c4 08	 add	 esp, 8

; 1547 : }

  00013	5d		 pop	 ebp
  00014	c3		 ret	 0
?Channel_Reset@@YAXXZ ENDP				; Channel_Reset
_TEXT	ENDS
PUBLIC	?TidyUp@@YAXPAUHWND__@@@Z			; TidyUp
; Function compile flags: /Odtp
;	COMDAT ?TidyUp@@YAXPAUHWND__@@@Z
_TEXT	SEGMENT
_hDlg$ = 8						; size = 4
?TidyUp@@YAXPAUHWND__@@@Z PROC				; TidyUp, COMDAT

; 845  : {

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

; 846  :     if (MyInScan)

  00003	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInScan@@3HA, 0 ; MyInScan
  0000a	74 0c		 je	 SHORT $LN1@TidyUp

; 847  :     {
; 848  :         EndScan(hDlg);

  0000c	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0000f	50		 push	 eax
  00010	e8 00 00 00 00	 call	 ?EndScan@@YAXPAUHWND__@@@Z ; EndScan
  00015	83 c4 04	 add	 esp, 4
$LN1@TidyUp:

; 849  :     }
; 850  :     MyCountries.Clear();

  00018	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  0001d	e8 00 00 00 00	 call	 ?Clear@CCountryList@@QAEXXZ ; CCountryList::Clear

; 851  : }

  00022	5d		 pop	 ebp
  00023	c3		 ret	 0
?TidyUp@@YAXPAUHWND__@@@Z ENDP				; TidyUp
_TEXT	ENDS
PUBLIC	?ScanFrequency@@YAKPAUHWND__@@K@Z		; ScanFrequency
;	COMDAT ?sbuf@?1??ScanFrequency@@YAKPAUHWND__@@K@Z@4PA_WA
_BSS	SEGMENT
?sbuf@?1??ScanFrequency@@YAKPAUHWND__@@K@Z@4PA_WA DW 0100H DUP (?) ; `ScanFrequency'::`2'::sbuf
_BSS	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?ScanFrequency@@YAKPAUHWND__@@K@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?ScanFrequency@@YAKPAUHWND__@@K@Z$0
__ehfuncinfo$?ScanFrequency@@YAKPAUHWND__@@K@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?ScanFrequency@@YAKPAUHWND__@@K@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?ScanFrequency@@YAKPAUHWND__@@K@Z
_TEXT	SEGMENT
tv93 = -44						; size = 4
tv140 = -40						; size = 8
$T359196 = -32						; size = 4
$T359195 = -28						; size = 4
_afcThreshold$ = -24					; size = 4
_returned$ = -20					; size = 4
_videoFormat$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_hDlg$ = 8						; size = 4
_dwFrequency$ = 12					; size = 4
?ScanFrequency@@YAKPAUHWND__@@K@Z PROC			; ScanFrequency, COMDAT

; 711  : {

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

; 712  :     static TCHAR sbuf[256];
; 713  : 
; 714  :     DWORD afcThreshold = 0;

  00025	c7 45 e8 00 00
	00 00		 mov	 DWORD PTR _afcThreshold$[ebp], 0

; 715  :     if (MyIsUsingAFC)

  0002c	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyIsUsingAFC@@3HA, 0 ; MyIsUsingAFC
  00033	74 0f		 je	 SHORT $LN3@ScanFreque

; 716  :     {
; 717  :         //Use the steps - 1 for AFC threshold
; 718  :         afcThreshold = SelectedScanSteps(hDlg);

  00035	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00038	50		 push	 eax
  00039	e8 00 00 00 00	 call	 ?SelectedScanSteps@@YAKPAUHWND__@@@Z ; SelectedScanSteps
  0003e	83 c4 04	 add	 esp, 4
  00041	89 45 e8	 mov	 DWORD PTR _afcThreshold$[ebp], eax
$LN3@ScanFreque:

; 719  :     }
; 720  : 
; 721  :     eVideoFormat videoFormat = SelectedVideoFormat(hDlg);

  00044	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00047	51		 push	 ecx
  00048	e8 00 00 00 00	 call	 ?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ; SelectedVideoFormat
  0004d	83 c4 04	 add	 esp, 4
  00050	89 45 f0	 mov	 DWORD PTR _videoFormat$[ebp], eax

; 722  : 
; 723  :     SetFrequencyEditBox(hDlg, dwFrequency);

  00053	8b 55 0c	 mov	 edx, DWORD PTR _dwFrequency$[ebp]
  00056	52		 push	 edx
  00057	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0005a	50		 push	 eax
  0005b	e8 00 00 00 00	 call	 ?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z ; SetFrequencyEditBox
  00060	83 c4 08	 add	 esp, 8

; 724  :     DWORD returned = FindFrequency(dwFrequency, videoFormat, afcThreshold);

  00063	8b 4d e8	 mov	 ecx, DWORD PTR _afcThreshold$[ebp]
  00066	51		 push	 ecx
  00067	8b 55 f0	 mov	 edx, DWORD PTR _videoFormat$[ebp]
  0006a	52		 push	 edx
  0006b	8b 45 0c	 mov	 eax, DWORD PTR _dwFrequency$[ebp]
  0006e	50		 push	 eax
  0006f	e8 00 00 00 00	 call	 ?FindFrequency@@YAKKHK@Z ; FindFrequency
  00074	83 c4 0c	 add	 esp, 12			; 0000000cH
  00077	89 45 ec	 mov	 DWORD PTR _returned$[ebp], eax

; 725  : 
; 726  :     if (returned == 0)

  0007a	83 7d ec 00	 cmp	 DWORD PTR _returned$[ebp], 0
  0007e	75 05		 jne	 SHORT $LN2@ScanFreque

; 727  :     {
; 728  : 
; 729  :     }
; 730  :     else

  00080	e9 8a 00 00 00	 jmp	 $LN1@ScanFreque
$LN2@ScanFreque:

; 731  :     {
; 732  :         //returned = returned + afcThreshold;
; 733  :         _stprintf(sbuf, _T("%10.4lf MHz"), (double)dwFrequency / 1000000.0);

  00085	8b 4d 0c	 mov	 ecx, DWORD PTR _dwFrequency$[ebp]
  00088	89 4d d8	 mov	 DWORD PTR tv140[ebp], ecx
  0008b	c7 45 dc 00 00
	00 00		 mov	 DWORD PTR tv140[ebp+4], 0
  00092	df 6d d8	 fild	 QWORD PTR tv140[ebp]
  00095	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@412e848000000000
  0009b	83 ec 08	 sub	 esp, 8
  0009e	dd 1c 24	 fstp	 QWORD PTR [esp]
  000a1	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@JMPIBPJF@?$AA?$CF?$AA1?$AA0?$AA?4?$AA4?$AAl?$AAf?$AA?5?$AAM?$AAH?$AAz?$AA?$AA@
  000a6	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??ScanFrequency@@YAKPAUHWND__@@K@Z@4PA_WA
  000ab	e8 00 00 00 00	 call	 __swprintf
  000b0	83 c4 10	 add	 esp, 16			; 00000010H

; 734  : 
; 735  :         AddScannedChannel(hDlg,
; 736  :             new CChannel(
; 737  :                     sbuf,
; 738  :                     returned,
; 739  :                     0,
; 740  :                     videoFormat,
; 741  :                     TRUE));

  000b3	6a 48		 push	 72			; 00000048H
  000b5	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  000ba	83 c4 04	 add	 esp, 4
  000bd	89 45 e0	 mov	 DWORD PTR $T359196[ebp], eax
  000c0	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  000c7	83 7d e0 00	 cmp	 DWORD PTR $T359196[ebp], 0
  000cb	74 1e		 je	 SHORT $LN6@ScanFreque
  000cd	6a 01		 push	 1
  000cf	8b 55 f0	 mov	 edx, DWORD PTR _videoFormat$[ebp]
  000d2	52		 push	 edx
  000d3	6a 00		 push	 0
  000d5	8b 45 ec	 mov	 eax, DWORD PTR _returned$[ebp]
  000d8	50		 push	 eax
  000d9	68 00 00 00 00	 push	 OFFSET ?sbuf@?1??ScanFrequency@@YAKPAUHWND__@@K@Z@4PA_WA
  000de	8b 4d e0	 mov	 ecx, DWORD PTR $T359196[ebp]
  000e1	e8 00 00 00 00	 call	 ??0CChannel@@QAE@PB_WKHW4eVideoFormat@@H@Z ; CChannel::CChannel
  000e6	89 45 d4	 mov	 DWORD PTR tv93[ebp], eax
  000e9	eb 07		 jmp	 SHORT $LN7@ScanFreque
$LN6@ScanFreque:
  000eb	c7 45 d4 00 00
	00 00		 mov	 DWORD PTR tv93[ebp], 0
$LN7@ScanFreque:
  000f2	8b 4d d4	 mov	 ecx, DWORD PTR tv93[ebp]
  000f5	89 4d e4	 mov	 DWORD PTR $T359195[ebp], ecx
  000f8	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000ff	8b 55 e4	 mov	 edx, DWORD PTR $T359195[ebp]
  00102	52		 push	 edx
  00103	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00106	50		 push	 eax
  00107	e8 00 00 00 00	 call	 ?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z ; AddScannedChannel
  0010c	83 c4 08	 add	 esp, 8
$LN1@ScanFreque:

; 742  : 
; 743  :     }
; 744  : 
; 745  :     return returned;

  0010f	8b 45 ec	 mov	 eax, DWORD PTR _returned$[ebp]

; 746  : }

  00112	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00115	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0011c	59		 pop	 ecx
  0011d	8b e5		 mov	 esp, ebp
  0011f	5d		 pop	 ebp
  00120	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?ScanFrequency@@YAKPAUHWND__@@K@Z$0:
  00000	8b 45 e0	 mov	 eax, DWORD PTR $T359196[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__ehhandler$?ScanFrequency@@YAKPAUHWND__@@K@Z:
  0000b	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000f	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00012	8b 4a dc	 mov	 ecx, DWORD PTR [edx-36]
  00015	33 c8		 xor	 ecx, eax
  00017	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0001c	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?ScanFrequency@@YAKPAUHWND__@@K@Z
  00021	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?ScanFrequency@@YAKPAUHWND__@@K@Z ENDP			; ScanFrequency
PUBLIC	?ScanChannelCustom@@YAXPAUHWND__@@HH@Z		; ScanChannelCustom
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z$1
__ehfuncinfo$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z DD 019930522H
	DD	02H
	DD	FLAT:__unwindtable$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?ScanChannelCustom@@YAXPAUHWND__@@HH@Z
_TEXT	SEGMENT
tv155 = -48						; size = 4
tv137 = -44						; size = 4
$T359213 = -40						; size = 4
$T359212 = -36						; size = 4
$T359209 = -32						; size = 4
$T359208 = -28						; size = 4
_channel$ = -24						; size = 4
_NewChannel$ = -20					; size = 4
_ReturnedFreq$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_hDlg$ = 8						; size = 4
_iCurrentChannelIndex$ = 12				; size = 4
_iCountryCode$ = 16					; size = 4
?ScanChannelCustom@@YAXPAUHWND__@@HH@Z PROC		; ScanChannelCustom, COMDAT

; 667  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	83 ec 24	 sub	 esp, 36			; 00000024H
  00014	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00019	33 c5		 xor	 eax, ebp
  0001b	50		 push	 eax
  0001c	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001f	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 668  :     _ASSERTE(iCountryCode >= 0);
; 669  :     _ASSERTE(iCountryCode < MyCountries.GetSize());
; 670  : 
; 671  :     MyInUpdate = TRUE;

  00025	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 672  : 
; 673  :     const CChannel* channel = MyCountries.GetChannels(iCountryCode)->GetChannel(iCurrentChannelIndex);

  0002f	8b 45 0c	 mov	 eax, DWORD PTR _iCurrentChannelIndex$[ebp]
  00032	50		 push	 eax
  00033	8b 4d 10	 mov	 ecx, DWORD PTR _iCountryCode$[ebp]
  00036	51		 push	 ecx
  00037	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  0003c	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00041	8b c8		 mov	 ecx, eax
  00043	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  00048	89 45 e8	 mov	 DWORD PTR _channel$[ebp], eax

; 674  :     UpdateDetails(hDlg, channel);

  0004b	8b 55 e8	 mov	 edx, DWORD PTR _channel$[ebp]
  0004e	52		 push	 edx
  0004f	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00052	50		 push	 eax
  00053	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z ; UpdateDetails
  00058	83 c4 08	 add	 esp, 8

; 675  :     DWORD ReturnedFreq = FindFrequency(channel->GetFrequency(), channel->GetFormat(), 0);

  0005b	6a 00		 push	 0
  0005d	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  00060	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  00065	50		 push	 eax
  00066	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  00069	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  0006e	50		 push	 eax
  0006f	e8 00 00 00 00	 call	 ?FindFrequency@@YAKKHK@Z ; FindFrequency
  00074	83 c4 0c	 add	 esp, 12			; 0000000cH
  00077	89 45 f0	 mov	 DWORD PTR _ReturnedFreq$[ebp], eax

; 676  : 
; 677  :     // add channel if frequency found
; 678  :     // or if we want all the channels
; 679  :     CChannel* NewChannel = NULL;

  0007a	c7 45 ec 00 00
	00 00		 mov	 DWORD PTR _NewChannel$[ebp], 0

; 680  :     if (ReturnedFreq == 0)

  00081	83 7d f0 00	 cmp	 DWORD PTR _ReturnedFreq$[ebp], 0
  00085	75 69		 jne	 SHORT $LN3@ScanChanne

; 681  :     {
; 682  :         NewChannel = new CChannel(
; 683  :                                     channel->GetName(),
; 684  :                                     channel->GetFrequency(),
; 685  :                                     channel->GetChannelNumber(),
; 686  :                                     channel->GetFormat(),
; 687  :                                     FALSE
; 688  :                                  );

  00087	6a 48		 push	 72			; 00000048H
  00089	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  0008e	83 c4 04	 add	 esp, 4
  00091	89 45 e0	 mov	 DWORD PTR $T359209[ebp], eax
  00094	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0009b	83 7d e0 00	 cmp	 DWORD PTR $T359209[ebp], 0
  0009f	74 33		 je	 SHORT $LN6@ScanChanne
  000a1	6a 00		 push	 0
  000a3	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  000a6	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  000ab	50		 push	 eax
  000ac	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  000af	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  000b4	50		 push	 eax
  000b5	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  000b8	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  000bd	50		 push	 eax
  000be	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  000c1	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  000c6	50		 push	 eax
  000c7	8b 4d e0	 mov	 ecx, DWORD PTR $T359209[ebp]
  000ca	e8 00 00 00 00	 call	 ??0CChannel@@QAE@PB_WKHW4eVideoFormat@@H@Z ; CChannel::CChannel
  000cf	89 45 d4	 mov	 DWORD PTR tv137[ebp], eax
  000d2	eb 07		 jmp	 SHORT $LN7@ScanChanne
$LN6@ScanChanne:
  000d4	c7 45 d4 00 00
	00 00		 mov	 DWORD PTR tv137[ebp], 0
$LN7@ScanChanne:
  000db	8b 4d d4	 mov	 ecx, DWORD PTR tv137[ebp]
  000de	89 4d e4	 mov	 DWORD PTR $T359208[ebp], ecx
  000e1	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  000e8	8b 55 e4	 mov	 edx, DWORD PTR $T359208[ebp]
  000eb	89 55 ec	 mov	 DWORD PTR _NewChannel$[ebp], edx

; 689  :     }
; 690  :     else

  000ee	eb 62		 jmp	 SHORT $LN2@ScanChanne
$LN3@ScanChanne:

; 691  :     {
; 692  :         NewChannel = new CChannel(
; 693  :                                     channel->GetName(),
; 694  :                                     ReturnedFreq,
; 695  :                                     channel->GetChannelNumber(),
; 696  :                                     channel->GetFormat(),
; 697  :                                     TRUE
; 698  :                                  );

  000f0	6a 48		 push	 72			; 00000048H
  000f2	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  000f7	83 c4 04	 add	 esp, 4
  000fa	89 45 d8	 mov	 DWORD PTR $T359213[ebp], eax
  000fd	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  00104	83 7d d8 00	 cmp	 DWORD PTR $T359213[ebp], 0
  00108	74 2e		 je	 SHORT $LN8@ScanChanne
  0010a	6a 01		 push	 1
  0010c	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  0010f	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  00114	50		 push	 eax
  00115	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  00118	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  0011d	50		 push	 eax
  0011e	8b 45 f0	 mov	 eax, DWORD PTR _ReturnedFreq$[ebp]
  00121	50		 push	 eax
  00122	8b 4d e8	 mov	 ecx, DWORD PTR _channel$[ebp]
  00125	e8 00 00 00 00	 call	 ?GetName@CChannel@@QBEPB_WXZ ; CChannel::GetName
  0012a	50		 push	 eax
  0012b	8b 4d d8	 mov	 ecx, DWORD PTR $T359213[ebp]
  0012e	e8 00 00 00 00	 call	 ??0CChannel@@QAE@PB_WKHW4eVideoFormat@@H@Z ; CChannel::CChannel
  00133	89 45 d0	 mov	 DWORD PTR tv155[ebp], eax
  00136	eb 07		 jmp	 SHORT $LN9@ScanChanne
$LN8@ScanChanne:
  00138	c7 45 d0 00 00
	00 00		 mov	 DWORD PTR tv155[ebp], 0
$LN9@ScanChanne:
  0013f	8b 4d d0	 mov	 ecx, DWORD PTR tv155[ebp]
  00142	89 4d dc	 mov	 DWORD PTR $T359212[ebp], ecx
  00145	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0014c	8b 55 dc	 mov	 edx, DWORD PTR $T359212[ebp]
  0014f	89 55 ec	 mov	 DWORD PTR _NewChannel$[ebp], edx
$LN2@ScanChanne:

; 699  :     }
; 700  : 
; 701  :     if (NULL != NewChannel)

  00152	83 7d ec 00	 cmp	 DWORD PTR _NewChannel$[ebp], 0
  00156	74 10		 je	 SHORT $LN1@ScanChanne

; 702  :     {
; 703  :         AddScannedChannel(hDlg, NewChannel);

  00158	8b 45 ec	 mov	 eax, DWORD PTR _NewChannel$[ebp]
  0015b	50		 push	 eax
  0015c	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0015f	51		 push	 ecx
  00160	e8 00 00 00 00	 call	 ?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z ; AddScannedChannel
  00165	83 c4 08	 add	 esp, 8
$LN1@ScanChanne:

; 704  :     }
; 705  : 
; 706  :     MyInUpdate = FALSE;

  00168	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 707  : }

  00172	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00175	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0017c	59		 pop	 ecx
  0017d	8b e5		 mov	 esp, ebp
  0017f	5d		 pop	 ebp
  00180	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z$0:
  00000	8b 45 e0	 mov	 eax, DWORD PTR $T359209[ebp]
  00003	50		 push	 eax
  00004	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00009	59		 pop	 ecx
  0000a	c3		 ret	 0
__unwindfunclet$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z$1:
  0000b	8b 45 d8	 mov	 eax, DWORD PTR $T359213[ebp]
  0000e	50		 push	 eax
  0000f	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00014	59		 pop	 ecx
  00015	c3		 ret	 0
__ehhandler$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z:
  00016	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0001a	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0001d	8b 4a d8	 mov	 ecx, DWORD PTR [edx-40]
  00020	33 c8		 xor	 ecx, eax
  00022	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00027	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?ScanChannelCustom@@YAXPAUHWND__@@HH@Z
  0002c	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?ScanChannelCustom@@YAXPAUHWND__@@HH@Z ENDP		; ScanChannelCustom
PUBLIC	__$ArrayPad$
PUBLIC	?ScanChannelPreset@@YAXPAUHWND__@@HH@Z		; ScanChannelPreset
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$0
	DD	00H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$1
	DD	00H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$2
	DD	00H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$3
	DD	03H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$4
	DD	04H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$5
	DD	00H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$6
	DD	06H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$7
	DD	07H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$8
	DD	00H
	DD	FLAT:__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$9
__ehfuncinfo$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z DD 019930522H
	DD	0aH
	DD	FLAT:__unwindtable$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?ScanChannelPreset@@YAXPAUHWND__@@HH@Z
_TEXT	SEGMENT
tv266 = -576						; size = 4
tv282 = -572						; size = 4
tv286 = -568						; size = 4
tv280 = -564						; size = 4
tv218 = -560						; size = 4
tv277 = -556						; size = 4
tv285 = -552						; size = 4
tv275 = -548						; size = 4
tv187 = -544						; size = 4
tv272 = -540						; size = 4
tv284 = -536						; size = 4
tv270 = -532						; size = 4
tv128 = -528						; size = 4
$T359234 = -524						; size = 4
$T359233 = -520						; size = 4
$T359232 = -516						; size = 28
$T359231 = -488						; size = 28
$T359230 = -460						; size = 28
$T359229 = -432						; size = 28
$T359228 = -404						; size = 28
$T359227 = -376						; size = 28
_oss$144194 = -348					; size = 128
_oss$144156 = -220					; size = 128
_msg$144148 = -88					; size = 28
_i$144143 = -60						; size = 4
_NewChannel$144197 = -56				; size = 4
_sbuf$144140 = -52					; size = 28
__$ArrayPad$ = -24					; size = 4
_ReturnedFreq$144138 = -20				; size = 4
_channel$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_hDlg$ = 8						; size = 4
_iCurrentChannelIndex$ = 12				; size = 4
_iCountryCode$ = 16					; size = 4
?ScanChannelPreset@@YAXPAUHWND__@@HH@Z PROC		; ScanChannelPreset, COMDAT

; 583  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec 34 02 00
	00		 sub	 esp, 564		; 00000234H
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	89 45 e8	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  00021	50		 push	 eax
  00022	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00025	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 584  :     _ASSERTE(iCountryCode >= 0);
; 585  :     _ASSERTE(iCountryCode < MyCountries.GetSize());
; 586  : 
; 587  :     MyInUpdate = TRUE;

  0002b	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 588  : 
; 589  :     const CChannel* channel = MyCountries.GetChannels(iCountryCode)->GetChannel(iCurrentChannelIndex);

  00035	8b 45 0c	 mov	 eax, DWORD PTR _iCurrentChannelIndex$[ebp]
  00038	50		 push	 eax
  00039	8b 4d 10	 mov	 ecx, DWORD PTR _iCountryCode$[ebp]
  0003c	51		 push	 ecx
  0003d	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00042	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00047	8b c8		 mov	 ecx, eax
  00049	e8 00 00 00 00	 call	 ?GetChannel@CChannelList@@QBEPBVCChannel@@H@Z ; CChannelList::GetChannel
  0004e	89 45 f0	 mov	 DWORD PTR _channel$[ebp], eax

; 590  :     UpdateDetails(hDlg, channel);

  00051	8b 55 f0	 mov	 edx, DWORD PTR _channel$[ebp]
  00054	52		 push	 edx
  00055	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00058	50		 push	 eax
  00059	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@PBVCChannel@@@Z ; UpdateDetails
  0005e	83 c4 08	 add	 esp, 8

; 591  : 
; 592  :     // don't attempt to scan duplicate frequencies
; 593  :     if(!MyChannels.GetChannelByFrequency(channel->GetFrequency()))

  00061	8b 4d f0	 mov	 ecx, DWORD PTR _channel$[ebp]
  00064	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  00069	50		 push	 eax
  0006a	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0006f	e8 00 00 00 00	 call	 ?GetChannelByFrequency@CChannelList@@QAEPBVCChannel@@K@Z ; CChannelList::GetChannelByFrequency
  00074	85 c0		 test	 eax, eax
  00076	0f 85 c2 03 00
	00		 jne	 $LN12@ScanChanne@2

; 594  :     {
; 595  :         DWORD ReturnedFreq = FindFrequency(channel->GetFrequency(), channel->GetFormat(), 0);

  0007c	6a 00		 push	 0
  0007e	8b 4d f0	 mov	 ecx, DWORD PTR _channel$[ebp]
  00081	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  00086	50		 push	 eax
  00087	8b 4d f0	 mov	 ecx, DWORD PTR _channel$[ebp]
  0008a	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  0008f	50		 push	 eax
  00090	e8 00 00 00 00	 call	 ?FindFrequency@@YAKKHK@Z ; FindFrequency
  00095	83 c4 0c	 add	 esp, 12			; 0000000cH
  00098	89 45 ec	 mov	 DWORD PTR _ReturnedFreq$144138[ebp], eax

; 596  : 
; 597  :         // add channel if frequency found
; 598  :         if (ReturnedFreq != 0)

  0009b	83 7d ec 00	 cmp	 DWORD PTR _ReturnedFreq$144138[ebp], 0
  0009f	0f 84 99 03 00
	00		 je	 $LN12@ScanChanne@2

; 599  :         {
; 600  :             tstring sbuf;

  000a5	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  000a8	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> >
  000ad	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 601  : 
; 602  :             // if teletext is active then get channel names
; 603  :             if (   bCaptureVBI
; 604  :                 && (   Setting_GetValue(WM_VBI_GETVALUE, DOTELETEXT)
; 605  :                     || Setting_GetValue(WM_VBI_GETVALUE, DOVPS)) )

  000b4	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?bCaptureVBI@@3HA, 0 ; bCaptureVBI
  000bb	0f 84 29 02 00
	00		 je	 $LN10@ScanChanne@2
  000c1	6a 02		 push	 2
  000c3	68 15 80 00 00	 push	 32789			; 00008015H
  000c8	e8 00 00 00 00	 call	 ?Setting_GetValue@@YAJJJ@Z ; Setting_GetValue
  000cd	83 c4 08	 add	 esp, 8
  000d0	85 c0		 test	 eax, eax
  000d2	75 17		 jne	 SHORT $LN9@ScanChanne@2
  000d4	6a 03		 push	 3
  000d6	68 15 80 00 00	 push	 32789			; 00008015H
  000db	e8 00 00 00 00	 call	 ?Setting_GetValue@@YAJJJ@Z ; Setting_GetValue
  000e0	83 c4 08	 add	 esp, 8
  000e3	85 c0		 test	 eax, eax
  000e5	0f 84 ff 01 00
	00		 je	 $LN10@ScanChanne@2
$LN9@ScanChanne@2:

; 606  :             {
; 607  :                 // Torsten's comment:
; 608  :                 // Because VBI decoding is not stopped before tuned
; 609  :                 // into the new channel we got in some cases old vbi data
; 610  :                 // from the previous tuned channel. So let's at first wait
; 611  :                 // some time to get stable signals from tuner. *After* waiting
; 612  :                 // is done then clear all buffers in vbi decoding and try again.
; 613  :                 Sleep(50);

  000eb	6a 32		 push	 50			; 00000032H
  000ed	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4

; 614  :                 VBI_ChannelChange();

  000f3	e8 00 00 00 00	 call	 ?VBI_ChannelChange@@YAXXZ ; VBI_ChannelChange

; 615  : 
; 616  :                 int i = 0;

  000f8	c7 45 c4 00 00
	00 00		 mov	 DWORD PTR _i$144143[ebp], 0
$LN8@ScanChanne@2:

; 617  :                 while(i < 12 && (sbuf[0] == '\0' || sbuf[0] == ' '))

  000ff	83 7d c4 0c	 cmp	 DWORD PTR _i$144143[ebp], 12 ; 0000000cH
  00103	0f 8d b4 00 00
	00		 jge	 $LN7@ScanChanne@2
  00109	6a 00		 push	 0
  0010b	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  0010e	e8 00 00 00 00	 call	 ??A?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAA_WI@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator[]
  00113	0f b7 08	 movzx	 ecx, WORD PTR [eax]
  00116	85 c9		 test	 ecx, ecx
  00118	74 16		 je	 SHORT $LN5@ScanChanne@2
  0011a	6a 00		 push	 0
  0011c	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  0011f	e8 00 00 00 00	 call	 ??A?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAA_WI@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::operator[]
  00124	0f b7 10	 movzx	 edx, WORD PTR [eax]
  00127	83 fa 20	 cmp	 edx, 32			; 00000020H
  0012a	0f 85 8d 00 00
	00		 jne	 $LN7@ScanChanne@2
$LN5@ScanChanne@2:

; 618  :                 {
; 619  :                     MSG msg;
; 620  :                     while (PeekMessage(&msg, NULL, 0, 0xffffffff, PM_REMOVE) == TRUE)

  00130	6a 01		 push	 1
  00132	6a ff		 push	 -1
  00134	6a 00		 push	 0
  00136	6a 00		 push	 0
  00138	8d 45 a8	 lea	 eax, DWORD PTR _msg$144148[ebp]
  0013b	50		 push	 eax
  0013c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PeekMessageW@20
  00142	83 f8 01	 cmp	 eax, 1
  00145	75 18		 jne	 SHORT $LN4@ScanChanne@2

; 621  :                     {
; 622  :                         SendMessage(msg.hwnd, msg.message, msg.wParam, msg.lParam);

  00147	8b 4d b4	 mov	 ecx, DWORD PTR _msg$144148[ebp+12]
  0014a	51		 push	 ecx
  0014b	8b 55 b0	 mov	 edx, DWORD PTR _msg$144148[ebp+8]
  0014e	52		 push	 edx
  0014f	8b 45 ac	 mov	 eax, DWORD PTR _msg$144148[ebp+4]
  00152	50		 push	 eax
  00153	8b 4d a8	 mov	 ecx, DWORD PTR _msg$144148[ebp]
  00156	51		 push	 ecx
  00157	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 623  :                     }

  0015d	eb d1		 jmp	 SHORT $LN5@ScanChanne@2
$LN4@ScanChanne@2:

; 624  : 
; 625  :                     // Laurent's comment: Increase the search duration because
; 626  :                     // 10 * 200 seems to be sometimes not enough for some networks.
; 627  :                     // The fact that the code ID in P8/30/1 needs to be received
; 628  :                     // twice with the same value before being used is the main reason.
; 629  :                     Sleep(200);

  0015f	68 c8 00 00 00	 push	 200			; 000000c8H
  00164	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4

; 630  :                     sbuf = Channel_GetVBIName(TRUE);

  0016a	6a 01		 push	 1
  0016c	8d 95 88 fe ff
	ff		 lea	 edx, DWORD PTR $T359227[ebp]
  00172	52		 push	 edx
  00173	e8 00 00 00 00	 call	 ?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z ; Channel_GetVBIName
  00178	83 c4 08	 add	 esp, 8
  0017b	89 85 f0 fd ff
	ff		 mov	 DWORD PTR tv128[ebp], eax
  00181	8b 85 f0 fd ff
	ff		 mov	 eax, DWORD PTR tv128[ebp]
  00187	89 85 ec fd ff
	ff		 mov	 DWORD PTR tv270[ebp], eax
  0018d	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  00191	8b 8d ec fd ff
	ff		 mov	 ecx, DWORD PTR tv270[ebp]
  00197	51		 push	 ecx
  00198	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  0019b	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=
  001a0	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  001a4	8d 8d 88 fe ff
	ff		 lea	 ecx, DWORD PTR $T359227[ebp]
  001aa	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> >

; 631  :                     ++i;

  001af	8b 55 c4	 mov	 edx, DWORD PTR _i$144143[ebp]
  001b2	83 c2 01	 add	 edx, 1
  001b5	89 55 c4	 mov	 DWORD PTR _i$144143[ebp], edx

; 632  :                 }

  001b8	e9 42 ff ff ff	 jmp	 $LN8@ScanChanne@2
$LN7@ScanChanne@2:

; 633  :                 if(sbuf.empty())

  001bd	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  001c0	e8 00 00 00 00	 call	 ?empty@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBE_NXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::empty
  001c5	0f b6 c0	 movzx	 eax, al
  001c8	85 c0		 test	 eax, eax
  001ca	74 45		 je	 SHORT $LN3@ScanChanne@2

; 634  :                 {
; 635  :                     sbuf = Channel_GetVBIName(FALSE);

  001cc	6a 00		 push	 0
  001ce	8d 8d 6c fe ff
	ff		 lea	 ecx, DWORD PTR $T359228[ebp]
  001d4	51		 push	 ecx
  001d5	e8 00 00 00 00	 call	 ?Channel_GetVBIName@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@H@Z ; Channel_GetVBIName
  001da	83 c4 08	 add	 esp, 8
  001dd	89 85 e8 fd ff
	ff		 mov	 DWORD PTR tv284[ebp], eax
  001e3	8b 95 e8 fd ff
	ff		 mov	 edx, DWORD PTR tv284[ebp]
  001e9	89 95 e4 fd ff
	ff		 mov	 DWORD PTR tv272[ebp], edx
  001ef	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  001f3	8b 85 e4 fd ff
	ff		 mov	 eax, DWORD PTR tv272[ebp]
  001f9	50		 push	 eax
  001fa	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  001fd	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=
  00202	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00206	8d 8d 6c fe ff
	ff		 lea	 ecx, DWORD PTR $T359228[ebp]
  0020c	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> >
$LN3@ScanChanne@2:

; 636  :                 }
; 637  :                 if(sbuf.empty())

  00211	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  00214	e8 00 00 00 00	 call	 ?empty@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBE_NXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::empty
  00219	0f b6 c8	 movzx	 ecx, al
  0021c	85 c9		 test	 ecx, ecx
  0021e	0f 84 c1 00 00
	00		 je	 $LN2@ScanChanne@2

; 638  :                 {
; 639  :                     tostringstream oss;

  00224	6a 01		 push	 1
  00226	6a 02		 push	 2
  00228	8d 8d 24 ff ff
	ff		 lea	 ecx, DWORD PTR _oss$144156[ebp]
  0022e	e8 00 00 00 00	 call	 ??0?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@H@Z ; std::basic_ostringstream<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_ostringstream<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00233	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3

; 640  :                     oss << MyChannels.GetSize() + 1;

  00237	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0023c	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00241	83 c0 01	 add	 eax, 1
  00244	50		 push	 eax
  00245	8d 8d 24 ff ff
	ff		 lea	 ecx, DWORD PTR _oss$144156[ebp]
  0024b	e8 00 00 00 00	 call	 ??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@H@Z ; std::basic_ostream<wchar_t,std::char_traits<wchar_t> >::operator<<

; 641  :                     sbuf = _T("Channel ") + oss.str();

  00250	8d 95 50 fe ff
	ff		 lea	 edx, DWORD PTR $T359229[ebp]
  00256	52		 push	 edx
  00257	8d 8d 24 ff ff
	ff		 lea	 ecx, DWORD PTR _oss$144156[ebp]
  0025d	e8 00 00 00 00	 call	 ?str@?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@XZ ; std::basic_ostringstream<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::str
  00262	89 85 e0 fd ff
	ff		 mov	 DWORD PTR tv187[ebp], eax
  00268	8b 85 e0 fd ff
	ff		 mov	 eax, DWORD PTR tv187[ebp]
  0026e	89 85 dc fd ff
	ff		 mov	 DWORD PTR tv275[ebp], eax
  00274	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  00278	8b 8d dc fd ff
	ff		 mov	 ecx, DWORD PTR tv275[ebp]
  0027e	51		 push	 ecx
  0027f	68 00 00 00 00	 push	 OFFSET ??_C@_1BC@NKCNKEDC@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AA?$AA@
  00284	8d 95 34 fe ff
	ff		 lea	 edx, DWORD PTR $T359230[ebp]
  0028a	52		 push	 edx
  0028b	e8 00 00 00 00	 call	 ??$?H_WU?$char_traits@_W@std@@V?$allocator@_W@1@@std@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@0@PB_WABV10@@Z ; std::operator+<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00290	83 c4 0c	 add	 esp, 12			; 0000000cH
  00293	89 85 d8 fd ff
	ff		 mov	 DWORD PTR tv285[ebp], eax
  00299	8b 85 d8 fd ff
	ff		 mov	 eax, DWORD PTR tv285[ebp]
  0029f	89 85 d4 fd ff
	ff		 mov	 DWORD PTR tv277[ebp], eax
  002a5	c6 45 fc 05	 mov	 BYTE PTR __$EHRec$[ebp+8], 5
  002a9	8b 8d d4 fd ff
	ff		 mov	 ecx, DWORD PTR tv277[ebp]
  002af	51		 push	 ecx
  002b0	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  002b3	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=
  002b8	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  002bc	8d 8d 34 fe ff
	ff		 lea	 ecx, DWORD PTR $T359230[ebp]
  002c2	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> >
  002c7	c6 45 fc 03	 mov	 BYTE PTR __$EHRec$[ebp+8], 3
  002cb	8d 8d 50 fe ff
	ff		 lea	 ecx, DWORD PTR $T359229[ebp]
  002d1	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> >

; 642  :                 }

  002d6	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  002da	8d 8d 24 ff ff
	ff		 lea	 ecx, DWORD PTR _oss$144156[ebp]
  002e0	e8 00 00 00 00	 call	 ??_D?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEXXZ
$LN2@ScanChanne@2:

; 643  :             }
; 644  :             else

  002e5	e9 c1 00 00 00	 jmp	 $LN1@ScanChanne@2
$LN10@ScanChanne@2:

; 645  :             {
; 646  :                 tostringstream oss;

  002ea	6a 01		 push	 1
  002ec	6a 02		 push	 2
  002ee	8d 8d a4 fe ff
	ff		 lea	 ecx, DWORD PTR _oss$144194[ebp]
  002f4	e8 00 00 00 00	 call	 ??0?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@H@Z ; std::basic_ostringstream<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_ostringstream<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  002f9	c6 45 fc 06	 mov	 BYTE PTR __$EHRec$[ebp+8], 6

; 647  :                 oss << MyChannels.GetSize() + 1;

  002fd	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00302	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00307	83 c0 01	 add	 eax, 1
  0030a	50		 push	 eax
  0030b	8d 8d a4 fe ff
	ff		 lea	 ecx, DWORD PTR _oss$144194[ebp]
  00311	e8 00 00 00 00	 call	 ??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@H@Z ; std::basic_ostream<wchar_t,std::char_traits<wchar_t> >::operator<<

; 648  :                 sbuf = _T("Channel ") + oss.str();

  00316	8d 95 18 fe ff
	ff		 lea	 edx, DWORD PTR $T359231[ebp]
  0031c	52		 push	 edx
  0031d	8d 8d a4 fe ff
	ff		 lea	 ecx, DWORD PTR _oss$144194[ebp]
  00323	e8 00 00 00 00	 call	 ?str@?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@XZ ; std::basic_ostringstream<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::str
  00328	89 85 d0 fd ff
	ff		 mov	 DWORD PTR tv218[ebp], eax
  0032e	8b 85 d0 fd ff
	ff		 mov	 eax, DWORD PTR tv218[ebp]
  00334	89 85 cc fd ff
	ff		 mov	 DWORD PTR tv280[ebp], eax
  0033a	c6 45 fc 07	 mov	 BYTE PTR __$EHRec$[ebp+8], 7
  0033e	8b 8d cc fd ff
	ff		 mov	 ecx, DWORD PTR tv280[ebp]
  00344	51		 push	 ecx
  00345	68 00 00 00 00	 push	 OFFSET ??_C@_1BC@NKCNKEDC@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AA?$AA@
  0034a	8d 95 fc fd ff
	ff		 lea	 edx, DWORD PTR $T359232[ebp]
  00350	52		 push	 edx
  00351	e8 00 00 00 00	 call	 ??$?H_WU?$char_traits@_W@std@@V?$allocator@_W@1@@std@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@0@PB_WABV10@@Z ; std::operator+<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  00356	83 c4 0c	 add	 esp, 12			; 0000000cH
  00359	89 85 c8 fd ff
	ff		 mov	 DWORD PTR tv286[ebp], eax
  0035f	8b 85 c8 fd ff
	ff		 mov	 eax, DWORD PTR tv286[ebp]
  00365	89 85 c4 fd ff
	ff		 mov	 DWORD PTR tv282[ebp], eax
  0036b	c6 45 fc 08	 mov	 BYTE PTR __$EHRec$[ebp+8], 8
  0036f	8b 8d c4 fd ff
	ff		 mov	 ecx, DWORD PTR tv282[ebp]
  00375	51		 push	 ecx
  00376	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  00379	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=
  0037e	c6 45 fc 07	 mov	 BYTE PTR __$EHRec$[ebp+8], 7
  00382	8d 8d fc fd ff
	ff		 lea	 ecx, DWORD PTR $T359232[ebp]
  00388	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> >
  0038d	c6 45 fc 06	 mov	 BYTE PTR __$EHRec$[ebp+8], 6
  00391	8d 8d 18 fe ff
	ff		 lea	 ecx, DWORD PTR $T359231[ebp]
  00397	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> >

; 649  :             }

  0039c	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  003a0	8d 8d a4 fe ff
	ff		 lea	 ecx, DWORD PTR _oss$144194[ebp]
  003a6	e8 00 00 00 00	 call	 ??_D?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEXXZ
$LN1@ScanChanne@2:

; 650  :             CChannel* NewChannel = new CChannel(
; 651  :                                         sbuf.c_str(),
; 652  :                                         ReturnedFreq,
; 653  :                                         channel->GetChannelNumber(),
; 654  :                                         channel->GetFormat(),
; 655  :                                         TRUE
; 656  :                                      );

  003ab	6a 48		 push	 72			; 00000048H
  003ad	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  003b2	83 c4 04	 add	 esp, 4
  003b5	89 85 f4 fd ff
	ff		 mov	 DWORD PTR $T359234[ebp], eax
  003bb	c6 45 fc 09	 mov	 BYTE PTR __$EHRec$[ebp+8], 9
  003bf	83 bd f4 fd ff
	ff 00		 cmp	 DWORD PTR $T359234[ebp], 0
  003c6	74 34		 je	 SHORT $LN15@ScanChanne@2
  003c8	6a 01		 push	 1
  003ca	8b 4d f0	 mov	 ecx, DWORD PTR _channel$[ebp]
  003cd	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  003d2	50		 push	 eax
  003d3	8b 4d f0	 mov	 ecx, DWORD PTR _channel$[ebp]
  003d6	e8 00 00 00 00	 call	 ?GetChannelNumber@CChannel@@QBEHXZ ; CChannel::GetChannelNumber
  003db	50		 push	 eax
  003dc	8b 55 ec	 mov	 edx, DWORD PTR _ReturnedFreq$144138[ebp]
  003df	52		 push	 edx
  003e0	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  003e3	e8 00 00 00 00	 call	 ?c_str@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEPB_WXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::c_str
  003e8	50		 push	 eax
  003e9	8b 8d f4 fd ff
	ff		 mov	 ecx, DWORD PTR $T359234[ebp]
  003ef	e8 00 00 00 00	 call	 ??0CChannel@@QAE@PB_WKHW4eVideoFormat@@H@Z ; CChannel::CChannel
  003f4	89 85 c0 fd ff
	ff		 mov	 DWORD PTR tv266[ebp], eax
  003fa	eb 0a		 jmp	 SHORT $LN16@ScanChanne@2
$LN15@ScanChanne@2:
  003fc	c7 85 c0 fd ff
	ff 00 00 00 00	 mov	 DWORD PTR tv266[ebp], 0
$LN16@ScanChanne@2:
  00406	8b 85 c0 fd ff
	ff		 mov	 eax, DWORD PTR tv266[ebp]
  0040c	89 85 f8 fd ff
	ff		 mov	 DWORD PTR $T359233[ebp], eax
  00412	c6 45 fc 00	 mov	 BYTE PTR __$EHRec$[ebp+8], 0
  00416	8b 8d f8 fd ff
	ff		 mov	 ecx, DWORD PTR $T359233[ebp]
  0041c	89 4d c8	 mov	 DWORD PTR _NewChannel$144197[ebp], ecx

; 657  :             AddScannedChannel(hDlg, NewChannel);

  0041f	8b 55 c8	 mov	 edx, DWORD PTR _NewChannel$144197[ebp]
  00422	52		 push	 edx
  00423	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00426	50		 push	 eax
  00427	e8 00 00 00 00	 call	 ?AddScannedChannel@@YAXPAUHWND__@@PAVCChannel@@@Z ; AddScannedChannel
  0042c	83 c4 08	 add	 esp, 8

; 658  :         }

  0042f	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00436	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  00439	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> >
$LN12@ScanChanne@2:

; 659  :     }
; 660  : 
; 661  :     MyInUpdate = FALSE;

  0043e	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 662  : }

  00448	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0044b	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00452	59		 pop	 ecx
  00453	8b 4d e8	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  00456	33 cd		 xor	 ecx, ebp
  00458	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0045d	8b e5		 mov	 esp, ebp
  0045f	5d		 pop	 ebp
  00460	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$0:
  00000	8d 4d cc	 lea	 ecx, DWORD PTR _sbuf$144140[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$1:
  00008	8d 8d 88 fe ff
	ff		 lea	 ecx, DWORD PTR $T359227[ebp]
  0000e	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$2:
  00013	8d 8d 6c fe ff
	ff		 lea	 ecx, DWORD PTR $T359228[ebp]
  00019	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$3:
  0001e	8d 8d 24 ff ff
	ff		 lea	 ecx, DWORD PTR _oss$144156[ebp]
  00024	e9 00 00 00 00	 jmp	 ??_D?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEXXZ
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$4:
  00029	8d 8d 50 fe ff
	ff		 lea	 ecx, DWORD PTR $T359229[ebp]
  0002f	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$5:
  00034	8d 8d 34 fe ff
	ff		 lea	 ecx, DWORD PTR $T359230[ebp]
  0003a	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$6:
  0003f	8d 8d a4 fe ff
	ff		 lea	 ecx, DWORD PTR _oss$144194[ebp]
  00045	e9 00 00 00 00	 jmp	 ??_D?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEXXZ
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$7:
  0004a	8d 8d 18 fe ff
	ff		 lea	 ecx, DWORD PTR $T359231[ebp]
  00050	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$8:
  00055	8d 8d fc fd ff
	ff		 lea	 ecx, DWORD PTR $T359232[ebp]
  0005b	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z$9:
  00060	8b 85 f4 fd ff
	ff		 mov	 eax, DWORD PTR $T359234[ebp]
  00066	50		 push	 eax
  00067	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0006c	59		 pop	 ecx
  0006d	c3		 ret	 0
__ehhandler$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z:
  0006e	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00072	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00075	8b 8a c8 fd ff
	ff		 mov	 ecx, DWORD PTR [edx-568]
  0007b	33 c8		 xor	 ecx, eax
  0007d	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00082	8b 4a f4	 mov	 ecx, DWORD PTR [edx-12]
  00085	33 c8		 xor	 ecx, eax
  00087	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0008c	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?ScanChannelPreset@@YAXPAUHWND__@@HH@Z
  00091	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?ScanChannelPreset@@YAXPAUHWND__@@HH@Z ENDP		; ScanChannelPreset
PUBLIC	__$ArrayPad$
PUBLIC	?ProgramListProc@@YGHPAUHWND__@@IIJ@Z		; ProgramListProc
;	COMDAT ?OldIsUsingAFC@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA
_BSS	SEGMENT
?OldIsUsingAFC@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA DD 01H DUP (?) ; `ProgramListProc'::`2'::OldIsUsingAFC
_BSS	ENDS
;	COMDAT ?OldCurrentProgram@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA
_BSS	SEGMENT
?OldCurrentProgram@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA DD 01H DUP (?) ; `ProgramListProc'::`2'::OldCurrentProgram
_BSS	ENDS
;	COMDAT ?OldCountryCode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA
_BSS	SEGMENT
?OldCountryCode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA DD 01H DUP (?) ; `ProgramListProc'::`2'::OldCountryCode
_BSS	ENDS
;	COMDAT ?OldScanMode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4W4eScanMode@@A
_BSS	SEGMENT
?OldScanMode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4W4eScanMode@@A DD 01H DUP (?) ; `ProgramListProc'::`2'::OldScanMode
_BSS	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$0
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$1
	DD	01H
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$2
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$3
	DD	03H
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$4
	DD	04H
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$5
	DD	03H
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$5
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$5
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$6
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$7
	DD	09H
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$8
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$9
	DD	0bH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$10
	DD	0cH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$11
	DD	0bH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$11
	DD	0ffffffffH
	DD	FLAT:__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$11
__ehfuncinfo$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z DD 019930522H
	DD	010H
	DD	FLAT:__unwindtable$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?ProgramListProc@@YGHPAUHWND__@@IIJ@Z
_TEXT	SEGMENT
tv1131 = -1756						; size = 4
tv1267 = -1752						; size = 4
tv1272 = -1748						; size = 4
tv1265 = -1744						; size = 4
tv801 = -1740						; size = 4
tv816 = -1736						; size = 4
tv740 = -1732						; size = 4
tv655 = -1728						; size = 4
tv626 = -1724						; size = 4
tv497 = -1720						; size = 4
tv395 = -1716						; size = 4
tv357 = -1712						; size = 4
tv290 = -1708						; size = 4
tv226 = -1704						; size = 4
tv1258 = -1700						; size = 4
tv1271 = -1696						; size = 4
tv1256 = -1692						; size = 4
tv153 = -1688						; size = 4
tv86 = -1684						; size = 4
tv77 = -1680						; size = 4
tv1253 = -1676						; size = 4
tv1270 = -1672						; size = 4
tv67 = -1668						; size = 4
tv64 = -1664						; size = 4
$T360382 = -1660					; size = 28
$T360381 = -1632					; size = 128
$T360380 = -1504					; size = 4
$T360377 = -1500					; size = 4
$T360376 = -1496					; size = 4
$T360375 = -1492					; size = 4
$T360374 = -1488					; size = 28
$T360373 = -1460					; size = 128
$T360372 = -1332					; size = 28
$T360371 = -1304					; size = 28
$T360368 = -1276					; size = 8
_TopIndex$144714 = -1268				; size = 4
_Item$144694 = -1264					; size = 4
_pDragInfo$144695 = -1260				; size = 4
_dummy$144679 = -1256					; size = 28
_muteAudio$144667 = -1228				; size = 4
_TopIndex$144635 = -1224				; size = 4
_TopIndex$144624 = -1220				; size = 4
_TopIndex$144612 = -1216				; size = 4
_dFreq$144582 = -1212					; size = 8
_NewChannel$144598 = -1204				; size = 8
_Freq$144583 = -1196					; size = 4
_Active$144589 = -1192					; size = 4
_Channel$144585 = -1188					; size = 4
_Format$144586 = -1184					; size = 4
_dFreq$144575 = -1180					; size = 8
_cLast$144574 = -1172					; size = 4
_Freq$144576 = -1168					; size = 4
_dFreq$144555 = -1164					; size = 8
_cLast$144554 = -1152					; size = 4
_Freq$144556 = -1148					; size = 4
_Freq$144545 = -1144					; size = 4
_ChannelNum$144534 = -1140				; size = 4
_Channel$144537 = -1136					; size = 4
_NewCountryCode$144511 = -1132				; size = 4
_newFrequency$144479 = -1128				; size = 4
_sourceChannels$144474 = -1124				; size = 4
_sourceChannels$144469 = -1120				; size = 4
_dFreq$144464 = -1116					; size = 8
_Freq$144465 = -1104					; size = 4
_dFreq$144451 = -1100					; size = 8
_Freq$144452 = -1092					; size = 4
_cLast$144442 = -1088					; size = 4
_errorMessage$144388 = -1084				; size = 28
_afcDeviation$144350 = -1056				; size = 4
_sbuf$ = -1052						; size = 512
_i$ = -536						; size = 4
_sbuf2$ = -532						; size = 512
__$ArrayPad$ = -16					; size = 4
__$EHRec$ = -12						; size = 12
_hDlg$ = 8						; size = 4
_message$ = 12						; size = 4
_wParam$ = 16						; size = 4
_lParam$ = 20						; size = 4
?ProgramListProc@@YGHPAUHWND__@@IIJ@Z PROC		; ProgramListProc, COMDAT

; 856  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	81 ec d0 06 00
	00		 sub	 esp, 1744		; 000006d0H
  00017	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0001c	33 c5		 xor	 eax, ebp
  0001e	89 45 f0	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  00021	50		 push	 eax
  00022	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  00025	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax

; 857  :     int i;
; 858  :     TCHAR sbuf[256];
; 859  :     TCHAR sbuf2[256];
; 860  :     static eScanMode OldScanMode;
; 861  :     static int OldCountryCode;
; 862  :     static BOOL OldIsUsingAFC;
; 863  :     static int OldCurrentProgram;
; 864  : 
; 865  :     switch (message)

  0002b	8b 45 0c	 mov	 eax, DWORD PTR _message$[ebp]
  0002e	89 85 80 f9 ff
	ff		 mov	 DWORD PTR tv64[ebp], eax
  00034	81 bd 80 f9 ff
	ff 01 0b 00 00	 cmp	 DWORD PTR tv64[ebp], 2817 ; 00000b01H
  0003e	77 43		 ja	 SHORT $LN125@ProgramLis@2
  00040	81 bd 80 f9 ff
	ff 01 0b 00 00	 cmp	 DWORD PTR tv64[ebp], 2817 ; 00000b01H
  0004a	0f 84 19 09 00
	00		 je	 $LN87@ProgramLis@2
  00050	8b 8d 80 f9 ff
	ff		 mov	 ecx, DWORD PTR tv64[ebp]
  00056	83 e9 2e	 sub	 ecx, 46			; 0000002eH
  00059	89 8d 80 f9 ff
	ff		 mov	 DWORD PTR tv64[ebp], ecx
  0005f	81 bd 80 f9 ff
	ff e6 00 00 00	 cmp	 DWORD PTR tv64[ebp], 230 ; 000000e6H
  00069	0f 87 03 19 00
	00		 ja	 $LN114@ProgramLis@2
  0006f	8b 95 80 f9 ff
	ff		 mov	 edx, DWORD PTR tv64[ebp]
  00075	0f b6 82 00 00
	00 00		 movzx	 eax, BYTE PTR $LN138@ProgramLis@2[edx]
  0007c	ff 24 85 00 00
	00 00		 jmp	 DWORD PTR $LN141@ProgramLis@2[eax*4]
$LN125@ProgramLis@2:
  00083	81 bd 80 f9 ff
	ff 02 0b 00 00	 cmp	 DWORD PTR tv64[ebp], 2818 ; 00000b02H
  0008d	0f 84 4b 09 00
	00		 je	 $LN83@ProgramLis@2
  00093	81 bd 80 f9 ff
	ff 03 0b 00 00	 cmp	 DWORD PTR tv64[ebp], 2819 ; 00000b03H
  0009d	0f 84 51 08 00
	00		 je	 $LN91@ProgramLis@2
  000a3	81 bd 80 f9 ff
	ff 04 0b 00 00	 cmp	 DWORD PTR tv64[ebp], 2820 ; 00000b04H
  000ad	0f 84 d2 09 00
	00		 je	 $LN77@ProgramLis@2
  000b3	e9 ba 18 00 00	 jmp	 $LN114@ProgramLis@2
$LN113@ProgramLis@2:

; 866  :     {
; 867  :     case WM_INITDIALOG:
; 868  :         {
; 869  :             MyInScan = FALSE;

  000b8	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInScan@@3HA, 0 ; MyInScan

; 870  :             MyInUpdate = TRUE;

  000c2	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 871  : 
; 872  :             OldScanMode = MyScanMode;

  000cc	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?MyScanMode@@3W4eScanMode@@A ; MyScanMode
  000d2	89 0d 00 00 00
	00		 mov	 DWORD PTR ?OldScanMode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4W4eScanMode@@A, ecx

; 873  :             OldCountryCode = CountryCode;

  000d8	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CountryCode@@3HA ; CountryCode
  000de	89 15 00 00 00
	00		 mov	 DWORD PTR ?OldCountryCode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA, edx

; 874  :             OldCurrentProgram = CurrentProgram;

  000e4	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  000e9	a3 00 00 00 00	 mov	 DWORD PTR ?OldCurrentProgram@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA, eax

; 875  : 
; 876  :             OldIsUsingAFC = MyIsUsingAFC;

  000ee	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?MyIsUsingAFC@@3HA ; MyIsUsingAFC
  000f4	89 0d 00 00 00
	00		 mov	 DWORD PTR ?OldIsUsingAFC@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA, ecx

; 877  :             //Test AFC caps of current source
; 878  :             long afcDeviation = 0;

  000fa	c7 85 e0 fb ff
	ff 00 00 00 00	 mov	 DWORD PTR _afcDeviation$144350[ebp], 0

; 879  :             MyIsAFCSupported = (Providers_GetCurrentSource()->GetTuner()->GetAFCStatus(afcDeviation) != TUNER_AFC_NOTSUPPORTED);

  00104	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00109	89 85 7c f9 ff
	ff		 mov	 DWORD PTR tv67[ebp], eax
  0010f	8d 95 04 fb ff
	ff		 lea	 edx, DWORD PTR $T360368[ebp]
  00115	52		 push	 edx
  00116	8b 85 7c f9 ff
	ff		 mov	 eax, DWORD PTR tv67[ebp]
  0011c	8b 10		 mov	 edx, DWORD PTR [eax]
  0011e	8b 8d 7c f9 ff
	ff		 mov	 ecx, DWORD PTR tv67[ebp]
  00124	8b 82 cc 00 00
	00		 mov	 eax, DWORD PTR [edx+204]
  0012a	ff d0		 call	 eax
  0012c	89 85 78 f9 ff
	ff		 mov	 DWORD PTR tv1270[ebp], eax
  00132	8b 8d 78 f9 ff
	ff		 mov	 ecx, DWORD PTR tv1270[ebp]
  00138	89 8d 74 f9 ff
	ff		 mov	 DWORD PTR tv1253[ebp], ecx
  0013e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00145	8b 8d 74 f9 ff
	ff		 mov	 ecx, DWORD PTR tv1253[ebp]
  0014b	e8 00 00 00 00	 call	 ??C?$SmartPtr@VITuner@@@@QBEPAVITuner@@XZ ; SmartPtr<ITuner>::operator->
  00150	89 85 70 f9 ff
	ff		 mov	 DWORD PTR tv77[ebp], eax
  00156	8d 95 e0 fb ff
	ff		 lea	 edx, DWORD PTR _afcDeviation$144350[ebp]
  0015c	52		 push	 edx
  0015d	8b 85 70 f9 ff
	ff		 mov	 eax, DWORD PTR tv77[ebp]
  00163	8b 10		 mov	 edx, DWORD PTR [eax]
  00165	8b 8d 70 f9 ff
	ff		 mov	 ecx, DWORD PTR tv77[ebp]
  0016b	8b 42 24	 mov	 eax, DWORD PTR [edx+36]
  0016e	ff d0		 call	 eax
  00170	33 c9		 xor	 ecx, ecx
  00172	83 f8 ff	 cmp	 eax, -1
  00175	0f 95 c1	 setne	 cl
  00178	89 0d 00 00 00
	00		 mov	 DWORD PTR ?MyIsAFCSupported@@3HA, ecx ; MyIsAFCSupported
  0017e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00185	8d 8d 04 fb ff
	ff		 lea	 ecx, DWORD PTR $T360368[ebp]
  0018b	e8 00 00 00 00	 call	 ??1?$SmartPtr@VITuner@@@@QAE@XZ ; SmartPtr<ITuner>::~SmartPtr<ITuner>

; 880  :             MyIsUsingAFC = MyIsUsingAFC && MyIsAFCSupported;

  00190	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyIsUsingAFC@@3HA, 0 ; MyIsUsingAFC
  00197	74 15		 je	 SHORT $LN118@ProgramLis@2
  00199	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyIsAFCSupported@@3HA, 0 ; MyIsAFCSupported
  001a0	74 0c		 je	 SHORT $LN118@ProgramLis@2
  001a2	c7 85 6c f9 ff
	ff 01 00 00 00	 mov	 DWORD PTR tv86[ebp], 1
  001ac	eb 0a		 jmp	 SHORT $LN119@ProgramLis@2
$LN118@ProgramLis@2:
  001ae	c7 85 6c f9 ff
	ff 00 00 00 00	 mov	 DWORD PTR tv86[ebp], 0
$LN119@ProgramLis@2:
  001b8	8b 95 6c f9 ff
	ff		 mov	 edx, DWORD PTR tv86[ebp]
  001be	89 15 00 00 00
	00		 mov	 DWORD PTR ?MyIsUsingAFC@@3HA, edx ; MyIsUsingAFC

; 881  : 
; 882  :             SetCapture(hDlg);

  001c4	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  001c7	50		 push	 eax
  001c8	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetCapture@4

; 883  : 
; 884  :             WM_DRAGLISTMESSAGE = RegisterWindowMessage(DRAGLISTMSGSTRING);

  001ce	68 00 00 00 00	 push	 OFFSET ??_C@_1CK@IKJMLFFL@?$AAc?$AAo?$AAm?$AAm?$AAc?$AAt?$AAr?$AAl?$AA_?$AAD?$AAr?$AAa?$AAg?$AAL?$AAi?$AAs?$AAt?$AAM?$AAs?$AAg?$AA?$AA@
  001d3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__RegisterWindowMessageW@4
  001d9	a3 00 00 00 00	 mov	 DWORD PTR ?WM_DRAGLISTMESSAGE@@3HA, eax ; WM_DRAGLISTMESSAGE

; 885  :             MakeDragList(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  001de	68 c4 06 00 00	 push	 1732			; 000006c4H
  001e3	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  001e6	51		 push	 ecx
  001e7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  001ed	50		 push	 eax
  001ee	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__MakeDragList@4

; 886  : 
; 887  :             ScrollBar_SetRange(GetDlgItem(hDlg, IDC_FINETUNE), 0, 100, FALSE);

  001f4	6a 00		 push	 0
  001f6	6a 64		 push	 100			; 00000064H
  001f8	6a 00		 push	 0
  001fa	6a 02		 push	 2
  001fc	68 52 06 00 00	 push	 1618			; 00000652H
  00201	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00204	52		 push	 edx
  00205	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0020b	50		 push	 eax
  0020c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetScrollRange@20

; 888  :             ScrollBar_SetPos(GetDlgItem(hDlg, IDC_FINETUNE), 50, FALSE);

  00212	6a 00		 push	 0
  00214	6a 32		 push	 50			; 00000032H
  00216	6a 02		 push	 2
  00218	68 52 06 00 00	 push	 1618			; 00000652H
  0021d	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00220	50		 push	 eax
  00221	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00227	50		 push	 eax
  00228	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetScrollPos@16

; 889  : 
; 890  :             // fill the formats box
; 891  :             ComboBox_AddString(GetDlgItem(hDlg, IDC_FORMAT), _T("Same as Tuner"));

  0022e	68 00 00 00 00	 push	 OFFSET ??_C@_1BM@BGMDNHDI@?$AAS?$AAa?$AAm?$AAe?$AA?5?$AAa?$AAs?$AA?5?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?$AA@
  00233	6a 00		 push	 0
  00235	68 43 01 00 00	 push	 323			; 00000143H
  0023a	68 53 06 00 00	 push	 1619			; 00000653H
  0023f	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00242	51		 push	 ecx
  00243	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00249	50		 push	 eax
  0024a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 892  :             for(i = 0; i < VIDEOFORMAT_LAST_TV; ++i)

  00250	c7 85 e8 fd ff
	ff 00 00 00 00	 mov	 DWORD PTR _i$[ebp], 0
  0025a	eb 0f		 jmp	 SHORT $LN112@ProgramLis@2
$LN111@ProgramLis@2:
  0025c	8b 95 e8 fd ff
	ff		 mov	 edx, DWORD PTR _i$[ebp]
  00262	83 c2 01	 add	 edx, 1
  00265	89 95 e8 fd ff
	ff		 mov	 DWORD PTR _i$[ebp], edx
$LN112@ProgramLis@2:
  0026b	83 bd e8 fd ff
	ff 14		 cmp	 DWORD PTR _i$[ebp], 20	; 00000014H
  00272	0f 8d 9b 00 00
	00		 jge	 $LN110@ProgramLis@2

; 893  :             {
; 894  :                 ComboBox_AddString(GetDlgItem(hDlg, IDC_FORMAT), MBCSToTString(VideoFormatNames[i]).c_str());

  00278	8b 85 e8 fd ff
	ff		 mov	 eax, DWORD PTR _i$[ebp]
  0027e	8b 0c 85 00 00
	00 00		 mov	 ecx, DWORD PTR ?VideoFormatNames@@3PAPBDA[eax*4]
  00285	51		 push	 ecx
  00286	8d 8d e8 fa ff
	ff		 lea	 ecx, DWORD PTR $T360371[ebp]
  0028c	e8 00 00 00 00	 call	 ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >
  00291	c7 45 fc 01 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 1
  00298	8d 95 e8 fa ff
	ff		 lea	 edx, DWORD PTR $T360371[ebp]
  0029e	52		 push	 edx
  0029f	8d 85 cc fa ff
	ff		 lea	 eax, DWORD PTR $T360372[ebp]
  002a5	50		 push	 eax
  002a6	e8 00 00 00 00	 call	 ?MBCSToUnicode@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z ; MBCSToUnicode
  002ab	83 c4 08	 add	 esp, 8
  002ae	89 85 68 f9 ff
	ff		 mov	 DWORD PTR tv153[ebp], eax
  002b4	8b 8d 68 f9 ff
	ff		 mov	 ecx, DWORD PTR tv153[ebp]
  002ba	89 8d 64 f9 ff
	ff		 mov	 DWORD PTR tv1256[ebp], ecx
  002c0	c6 45 fc 02	 mov	 BYTE PTR __$EHRec$[ebp+8], 2
  002c4	8b 8d 64 f9 ff
	ff		 mov	 ecx, DWORD PTR tv1256[ebp]
  002ca	e8 00 00 00 00	 call	 ?c_str@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEPB_WXZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::c_str
  002cf	50		 push	 eax
  002d0	6a 00		 push	 0
  002d2	68 43 01 00 00	 push	 323			; 00000143H
  002d7	68 53 06 00 00	 push	 1619			; 00000653H
  002dc	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  002df	52		 push	 edx
  002e0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  002e6	50		 push	 eax
  002e7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  002ed	c6 45 fc 01	 mov	 BYTE PTR __$EHRec$[ebp+8], 1
  002f1	8d 8d cc fa ff
	ff		 lea	 ecx, DWORD PTR $T360372[ebp]
  002f7	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> >
  002fc	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00303	8d 8d e8 fa ff
	ff		 lea	 ecx, DWORD PTR $T360371[ebp]
  00309	e8 00 00 00 00	 call	 ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >

; 895  :             }

  0030e	e9 49 ff ff ff	 jmp	 $LN111@ProgramLis@2
$LN110@ProgramLis@2:

; 896  :             ComboBox_AddString(GetDlgItem(hDlg, IDC_FORMAT), _T("Tuner default"));

  00313	68 00 00 00 00	 push	 OFFSET ??_C@_1BM@KLBLAOMM@?$AAT?$AAu?$AAn?$AAe?$AAr?$AA?5?$AAd?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AA?$AA@
  00318	6a 00		 push	 0
  0031a	68 43 01 00 00	 push	 323			; 00000143H
  0031f	68 53 06 00 00	 push	 1619			; 00000653H
  00324	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00327	50		 push	 eax
  00328	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0032e	50		 push	 eax
  0032f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 897  :             ComboBox_AddString(GetDlgItem(hDlg, IDC_FORMAT), _T("FM Radio"));

  00335	68 00 00 00 00	 push	 OFFSET ??_C@_1BC@DADPIMHH@?$AAF?$AAM?$AA?5?$AAR?$AAa?$AAd?$AAi?$AAo?$AA?$AA@
  0033a	6a 00		 push	 0
  0033c	68 43 01 00 00	 push	 323			; 00000143H
  00341	68 53 06 00 00	 push	 1619			; 00000653H
  00346	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00349	51		 push	 ecx
  0034a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00350	50		 push	 eax
  00351	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 898  : 
; 899  :             // load up the country settings and update the dialog controls
; 900  :             // with country setting info if relevant
; 901  :             if (!MyCountries.ReadASCII(SZ_DEFAULT_CHANNELS_FILENAME))

  00357	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR _SZ_DEFAULT_CHANNELS_FILENAME
  0035d	52		 push	 edx
  0035e	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00363	e8 00 00 00 00	 call	 ?ReadASCII@CCountryList@@QAEHPB_W@Z ; CCountryList::ReadASCII
  00368	85 c0		 test	 eax, eax
  0036a	0f 85 dc 00 00
	00		 jne	 $LN109@ProgramLis@2

; 902  :             {
; 903  :                 tstring errorMessage(MakeString() << _T("Channel presets cannot be loaded, \"") <<
; 904  :                                                     SZ_DEFAULT_CHANNELS_FILENAME << 
; 905  :                                                     _T("\" is corrupted or missing"));

  00370	8d 8d 4c fa ff
	ff		 lea	 ecx, DWORD PTR $T360373[ebp]
  00376	e8 00 00 00 00	 call	 ??0MakeString@@QAE@XZ
  0037b	89 85 60 f9 ff
	ff		 mov	 DWORD PTR tv1271[ebp], eax
  00381	8b 85 60 f9 ff
	ff		 mov	 eax, DWORD PTR tv1271[ebp]
  00387	89 85 5c f9 ff
	ff		 mov	 DWORD PTR tv1258[ebp], eax
  0038d	c7 45 fc 03 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 3
  00394	8d 8d 30 fa ff
	ff		 lea	 ecx, DWORD PTR $T360374[ebp]
  0039a	51		 push	 ecx
  0039b	68 00 00 00 00	 push	 OFFSET ??_C@_1DE@HGOJOHCJ@?$AA?$CC?$AA?5?$AAi?$AAs?$AA?5?$AAc?$AAo?$AAr?$AAr?$AAu?$AAp?$AAt?$AAe?$AAd?$AA?5?$AAo?$AAr?$AA?5?$AAm?$AAi?$AAs?$AAs?$AAi?$AAn?$AAg?$AA?$AA@
  003a0	68 00 00 00 00	 push	 OFFSET _SZ_DEFAULT_CHANNELS_FILENAME
  003a5	68 00 00 00 00	 push	 OFFSET ??_C@_1EI@IFKDICOB@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAr?$AAe?$AAs?$AAe?$AAt?$AAs?$AA?5?$AAc?$AAa?$AAn?$AAn?$AAo?$AAt?$AA?5?$AAb?$AAe?$AA?5?$AAl?$AAo?$AAa?$AAd?$AAe?$AAd@
  003aa	8b 8d 5c f9 ff
	ff		 mov	 ecx, DWORD PTR tv1258[ebp]
  003b0	e8 00 00 00 00	 call	 ??$?6$$BY0CE@$$CB_W@MakeString@@QAEAAV0@AAY0CE@$$CB_W@Z ; MakeString::operator<<<wchar_t const [36]>
  003b5	8b c8		 mov	 ecx, eax
  003b7	e8 00 00 00 00	 call	 ??$?6PB_W@MakeString@@QAEAAV0@ABQB_W@Z ; MakeString::operator<<<wchar_t const *>
  003bc	8b c8		 mov	 ecx, eax
  003be	e8 00 00 00 00	 call	 ??$?6$$BY0BK@$$CB_W@MakeString@@QAEAAV0@AAY0BK@$$CB_W@Z ; MakeString::operator<<<wchar_t const [26]>
  003c3	8b c8		 mov	 ecx, eax
  003c5	e8 00 00 00 00	 call	 ??BMakeString@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; MakeString::operator std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  003ca	c6 45 fc 04	 mov	 BYTE PTR __$EHRec$[ebp+8], 4
  003ce	8d 95 30 fa ff
	ff		 lea	 edx, DWORD PTR $T360374[ebp]
  003d4	52		 push	 edx
  003d5	8d 8d c4 fb ff
	ff		 lea	 ecx, DWORD PTR _errorMessage$144388[ebp]
  003db	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  003e0	c6 45 fc 06	 mov	 BYTE PTR __$EHRec$[ebp+8], 6
  003e4	8d 8d 30 fa ff
	ff		 lea	 ecx, DWORD PTR $T360374[ebp]
  003ea	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> >
  003ef	c6 45 fc 07	 mov	 BYTE PTR __$EHRec$[ebp+8], 7
  003f3	8d 8d 4c fa ff
	ff		 lea	 ecx, DWORD PTR $T360373[ebp]
  003f9	e8 00 00 00 00	 call	 ??1MakeString@@QAE@XZ

; 906  :                 ErrorBox(errorMessage);

  003fe	8d 85 c4 fb ff
	ff		 lea	 eax, DWORD PTR _errorMessage$144388[ebp]
  00404	50		 push	 eax
  00405	68 8a 03 00 00	 push	 906			; 0000038aH
  0040a	68 00 00 00 00	 push	 OFFSET ??_C@_1CE@JNGLIEDD@?$AA?4?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAc?$AAp?$AAp?$AA?$AA@
  0040f	6a 00		 push	 0
  00411	e8 00 00 00 00	 call	 ?_ErrorBox@@YAXPAUHWND__@@PB_WHABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; _ErrorBox
  00416	83 c4 10	 add	 esp, 16			; 00000010H

; 907  :                 EndDialog(hDlg, FALSE);

  00419	6a 00		 push	 0
  0041b	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0041e	51		 push	 ecx
  0041f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EndDialog@8

; 908  :                 return TRUE;

  00425	c7 85 2c fa ff
	ff 01 00 00 00	 mov	 DWORD PTR $T360375[ebp], 1
  0042f	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00436	8d 8d c4 fb ff
	ff		 lea	 ecx, DWORD PTR _errorMessage$144388[ebp]
  0043c	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> >
  00441	8b 85 2c fa ff
	ff		 mov	 eax, DWORD PTR $T360375[ebp]
  00447	e9 bc 17 00 00	 jmp	 $LN116@ProgramLis@2
$LN109@ProgramLis@2:

; 909  :             }
; 910  : 
; 911  :             ComboBox_ResetContent(GetDlgItem(hDlg, IDC_COUNTRY));

  0044c	6a 00		 push	 0
  0044e	6a 00		 push	 0
  00450	68 4b 01 00 00	 push	 331			; 0000014bH
  00455	68 b7 05 00 00	 push	 1463			; 000005b7H
  0045a	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0045d	52		 push	 edx
  0045e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00464	50		 push	 eax
  00465	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 912  :             for(i = 0; i < MyCountries.GetSize(); i++)

  0046b	c7 85 e8 fd ff
	ff 00 00 00 00	 mov	 DWORD PTR _i$[ebp], 0
  00475	eb 0f		 jmp	 SHORT $LN108@ProgramLis@2
$LN107@ProgramLis@2:
  00477	8b 85 e8 fd ff
	ff		 mov	 eax, DWORD PTR _i$[ebp]
  0047d	83 c0 01	 add	 eax, 1
  00480	89 85 e8 fd ff
	ff		 mov	 DWORD PTR _i$[ebp], eax
$LN108@ProgramLis@2:
  00486	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  0048b	e8 00 00 00 00	 call	 ?GetSize@CCountryList@@QBEHXZ ; CCountryList::GetSize
  00490	39 85 e8 fd ff
	ff		 cmp	 DWORD PTR _i$[ebp], eax
  00496	7d 31		 jge	 SHORT $LN106@ProgramLis@2

; 913  :             {
; 914  :                 ComboBox_AddString(GetDlgItem(hDlg, IDC_COUNTRY), MyCountries.GetCountryName(i));

  00498	8b 8d e8 fd ff
	ff		 mov	 ecx, DWORD PTR _i$[ebp]
  0049e	51		 push	 ecx
  0049f	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  004a4	e8 00 00 00 00	 call	 ?GetCountryName@CCountryList@@QBEPB_WH@Z ; CCountryList::GetCountryName
  004a9	50		 push	 eax
  004aa	6a 00		 push	 0
  004ac	68 43 01 00 00	 push	 323			; 00000143H
  004b1	68 b7 05 00 00	 push	 1463			; 000005b7H
  004b6	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  004b9	52		 push	 edx
  004ba	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  004c0	50		 push	 eax
  004c1	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 915  :             }

  004c7	eb ae		 jmp	 SHORT $LN107@ProgramLis@2
$LN106@ProgramLis@2:

; 916  :             ComboBox_AddString(GetDlgItem(hDlg, IDC_COUNTRY), _T("Full Frequency Scan") );

  004c9	68 00 00 00 00	 push	 OFFSET ??_C@_1CI@NGLPINPI@?$AAF?$AAu?$AAl?$AAl?$AA?5?$AAF?$AAr?$AAe?$AAq?$AAu?$AAe?$AAn?$AAc?$AAy?$AA?5?$AAS?$AAc?$AAa?$AAn?$AA?$AA@
  004ce	6a 00		 push	 0
  004d0	68 43 01 00 00	 push	 323			; 00000143H
  004d5	68 b7 05 00 00	 push	 1463			; 000005b7H
  004da	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  004dd	50		 push	 eax
  004de	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  004e4	50		 push	 eax
  004e5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 917  : 
; 918  :             switch (MyScanMode)

  004eb	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?MyScanMode@@3W4eScanMode@@A ; MyScanMode
  004f1	89 8d 58 f9 ff
	ff		 mov	 DWORD PTR tv226[ebp], ecx
  004f7	83 bd 58 f9 ff
	ff 00		 cmp	 DWORD PTR tv226[ebp], 0
  004fe	74 75		 je	 SHORT $LN102@ProgramLis@2
  00500	83 bd 58 f9 ff
	ff 01		 cmp	 DWORD PTR tv226[ebp], 1
  00507	74 12		 je	 SHORT $LN103@ProgramLis@2
  00509	83 bd 58 f9 ff
	ff 02		 cmp	 DWORD PTR tv226[ebp], 2
  00510	0f 84 b7 00 00
	00		 je	 $LN101@ProgramLis@2
  00516	e9 da 00 00 00	 jmp	 $LN104@ProgramLis@2
$LN103@ProgramLis@2:

; 919  :             {
; 920  :                 case SCAN_MODE_CUSTOM_ORDER :
; 921  :                     Button_SetCheck(GetDlgItem(hDlg, IDC_CUSTOMCHANNELORDER), BST_CHECKED);

  0051b	6a 00		 push	 0
  0051d	6a 01		 push	 1
  0051f	68 f1 00 00 00	 push	 241			; 000000f1H
  00524	68 ba 05 00 00	 push	 1466			; 000005baH
  00529	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0052c	52		 push	 edx
  0052d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00533	50		 push	 eax
  00534	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 922  :                     ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_COUNTRY), CountryCode);

  0053a	6a 00		 push	 0
  0053c	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CountryCode@@3HA ; CountryCode
  00541	50		 push	 eax
  00542	68 4e 01 00 00	 push	 334			; 0000014eH
  00547	68 b7 05 00 00	 push	 1463			; 000005b7H
  0054c	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0054f	51		 push	 ecx
  00550	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00556	50		 push	 eax
  00557	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 923  :                     RefreshChannelList(hDlg, CountryCode);

  0055d	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CountryCode@@3HA ; CountryCode
  00563	52		 push	 edx
  00564	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00567	50		 push	 eax
  00568	e8 00 00 00 00	 call	 ?RefreshChannelList@@YAXPAUHWND__@@H@Z ; RefreshChannelList
  0056d	83 c4 08	 add	 esp, 8

; 924  :                     break;

  00570	e9 80 00 00 00	 jmp	 $LN104@ProgramLis@2
$LN102@ProgramLis@2:

; 925  : 
; 926  :                 case SCAN_MODE_PRESETS :
; 927  :                     Button_SetCheck(GetDlgItem(hDlg, IDC_CUSTOMCHANNELORDER), BST_UNCHECKED);

  00575	6a 00		 push	 0
  00577	6a 00		 push	 0
  00579	68 f1 00 00 00	 push	 241			; 000000f1H
  0057e	68 ba 05 00 00	 push	 1466			; 000005baH
  00583	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00586	51		 push	 ecx
  00587	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0058d	50		 push	 eax
  0058e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 928  :                     ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_COUNTRY), CountryCode);

  00594	6a 00		 push	 0
  00596	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CountryCode@@3HA ; CountryCode
  0059c	52		 push	 edx
  0059d	68 4e 01 00 00	 push	 334			; 0000014eH
  005a2	68 b7 05 00 00	 push	 1463			; 000005b7H
  005a7	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  005aa	50		 push	 eax
  005ab	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  005b1	50		 push	 eax
  005b2	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 929  :                     RefreshChannelList(hDlg, CountryCode);

  005b8	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CountryCode@@3HA ; CountryCode
  005be	51		 push	 ecx
  005bf	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  005c2	52		 push	 edx
  005c3	e8 00 00 00 00	 call	 ?RefreshChannelList@@YAXPAUHWND__@@H@Z ; RefreshChannelList
  005c8	83 c4 08	 add	 esp, 8

; 930  :                     break;

  005cb	eb 28		 jmp	 SHORT $LN104@ProgramLis@2
$LN101@ProgramLis@2:

; 931  : 
; 932  :                 case SCAN_MODE_FULL_FREQUENCY :
; 933  :                     ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_COUNTRY), MyCountries.GetSize());

  005cd	6a 00		 push	 0
  005cf	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  005d4	e8 00 00 00 00	 call	 ?GetSize@CCountryList@@QBEHXZ ; CCountryList::GetSize
  005d9	50		 push	 eax
  005da	68 4e 01 00 00	 push	 334			; 0000014eH
  005df	68 b7 05 00 00	 push	 1463			; 000005b7H
  005e4	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  005e7	50		 push	 eax
  005e8	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  005ee	50		 push	 eax
  005ef	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN104@ProgramLis@2:

; 934  :                     break;
; 935  :             }
; 936  : 
; 937  :             if (!Providers_GetCurrentSource()->IsVideoPresent())

  005f5	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  005fa	89 85 54 f9 ff
	ff		 mov	 DWORD PTR tv290[ebp], eax
  00600	8b 8d 54 f9 ff
	ff		 mov	 ecx, DWORD PTR tv290[ebp]
  00606	8b 11		 mov	 edx, DWORD PTR [ecx]
  00608	8b 8d 54 f9 ff
	ff		 mov	 ecx, DWORD PTR tv290[ebp]
  0060e	8b 82 94 00 00
	00		 mov	 eax, DWORD PTR [edx+148]
  00614	ff d0		 call	 eax
  00616	85 c0		 test	 eax, eax
  00618	75 0a		 jne	 SHORT $LN100@ProgramLis@2

; 938  :             {
; 939  :                 //make sure it is muted when video is absent
; 940  :                 Audio_SetUserMute(TRUE);

  0061a	6a 01		 push	 1
  0061c	e8 00 00 00 00	 call	 ?Audio_SetUserMute@@YAXH@Z ; Audio_SetUserMute
  00621	83 c4 04	 add	 esp, 4
$LN100@ProgramLis@2:

; 941  :             }
; 942  :             Button_SetCheck(GetDlgItem(hDlg, IDC_SCAN_AFC), (MyIsUsingAFC) ? BST_CHECKED : BST_UNCHECKED);

  00624	6a 00		 push	 0
  00626	33 c9		 xor	 ecx, ecx
  00628	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyIsUsingAFC@@3HA, 0 ; MyIsUsingAFC
  0062f	0f 95 c1	 setne	 cl
  00632	51		 push	 ecx
  00633	68 f1 00 00 00	 push	 241			; 000000f1H
  00638	68 9a 05 00 00	 push	 1434			; 0000059aH
  0063d	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00640	52		 push	 edx
  00641	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00647	50		 push	 eax
  00648	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 943  :             Button_SetCheck(GetDlgItem(hDlg, IDC_CHANNEL_MUTE), ((TRUE == Audio_GetUserMute()) ? BST_CHECKED : BST_UNCHECKED));

  0064e	6a 00		 push	 0
  00650	e8 00 00 00 00	 call	 ?Audio_GetUserMute@@YAHXZ ; Audio_GetUserMute
  00655	83 e8 01	 sub	 eax, 1
  00658	f7 d8		 neg	 eax
  0065a	1b c0		 sbb	 eax, eax
  0065c	83 c0 01	 add	 eax, 1
  0065f	50		 push	 eax
  00660	68 f1 00 00 00	 push	 241			; 000000f1H
  00665	68 99 05 00 00	 push	 1433			; 00000599H
  0066a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0066d	50		 push	 eax
  0066e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00674	50		 push	 eax
  00675	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 944  : 
; 945  :             RefreshProgramList(hDlg, CurrentProgram);

  0067b	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00681	51		 push	 ecx
  00682	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00685	52		 push	 edx
  00686	e8 00 00 00 00	 call	 ?RefreshProgramList@@YAXPAUHWND__@@H@Z ; RefreshProgramList
  0068b	83 c4 08	 add	 esp, 8

; 946  : 
; 947  :             MyInUpdate = FALSE;

  0068e	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 948  : 
; 949  :             // if we have any channels then also fill the details box with the current program
; 950  :             UpdateDetails(hDlg, CurrentProgram);

  00698	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0069d	50		 push	 eax
  0069e	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  006a1	51		 push	 ecx
  006a2	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@H@Z ; UpdateDetails
  006a7	83 c4 08	 add	 esp, 8

; 951  :             UpdateAutoScanDetails(hDlg);

  006aa	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  006ad	52		 push	 edx
  006ae	e8 00 00 00 00	 call	 ?UpdateAutoScanDetails@@YAXPAUHWND__@@@Z ; UpdateAutoScanDetails
  006b3	83 c4 04	 add	 esp, 4

; 952  : 
; 953  :             //This will trigger an event on IDC_COUNTRY
; 954  :             SetFocus(GetDlgItem(hDlg, IDC_COUNTRY));

  006b6	68 b7 05 00 00	 push	 1463			; 000005b7H
  006bb	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  006be	50		 push	 eax
  006bf	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  006c5	50		 push	 eax
  006c6	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetFocus@4

; 955  :             UpdateEnabledState(hDlg, TRUE);

  006cc	6a 01		 push	 1
  006ce	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  006d1	51		 push	 ecx
  006d2	e8 00 00 00 00	 call	 ?UpdateEnabledState@@YAXPAUHWND__@@H@Z ; UpdateEnabledState
  006d7	83 c4 08	 add	 esp, 8

; 956  :         }
; 957  :         // we set focus
; 958  :         return FALSE;

  006da	33 c0		 xor	 eax, eax
  006dc	e9 27 15 00 00	 jmp	 $LN116@ProgramLis@2

; 959  :         break;

  006e1	e9 8c 12 00 00	 jmp	 $LN114@ProgramLis@2
$LN99@ProgramLis@2:

; 960  : 
; 961  :     case WM_HSCROLL:
; 962  :         if(MyInUpdate == FALSE)

  006e6	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  006ed	0f 85 fc 01 00
	00		 jne	 $LN93@ProgramLis@2

; 963  :         {
; 964  :             TCHAR* cLast;
; 965  :             if(LOWORD(wParam) == SB_LEFT ||
; 966  :                 LOWORD(wParam) == SB_PAGELEFT ||
; 967  :                 LOWORD(wParam) == SB_LINELEFT)

  006f3	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  006f6	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  006fc	0f b7 c2	 movzx	 eax, dx
  006ff	83 f8 06	 cmp	 eax, 6
  00702	74 24		 je	 SHORT $LN96@ProgramLis@2
  00704	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  00707	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  0070d	0f b7 d1	 movzx	 edx, cx
  00710	83 fa 02	 cmp	 edx, 2
  00713	74 13		 je	 SHORT $LN96@ProgramLis@2
  00715	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  00718	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  0071d	0f b7 c8	 movzx	 ecx, ax
  00720	85 c9		 test	 ecx, ecx
  00722	0f 85 d1 00 00
	00		 jne	 $LN97@ProgramLis@2
$LN96@ProgramLis@2:

; 968  :             {
; 969  :                 Edit_GetText(GetDlgItem(hDlg, IDC_FREQUENCY), sbuf, 255);

  00728	68 ff 00 00 00	 push	 255			; 000000ffH
  0072d	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  00733	52		 push	 edx
  00734	68 5d 06 00 00	 push	 1629			; 0000065dH
  00739	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0073c	50		 push	 eax
  0073d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00743	50		 push	 eax
  00744	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 970  :                 double dFreq = _tcstod(sbuf, &cLast);

  0074a	8d 8d c0 fb ff
	ff		 lea	 ecx, DWORD PTR _cLast$144442[ebp]
  00750	51		 push	 ecx
  00751	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  00757	52		 push	 edx
  00758	e8 00 00 00 00	 call	 _wcstod
  0075d	83 c4 08	 add	 esp, 8
  00760	dd 9d b4 fb ff
	ff		 fstp	 QWORD PTR _dFreq$144451[ebp]

; 971  :                 int Freq = (int)(dFreq * 1000000.0);

  00766	dd 85 b4 fb ff
	ff		 fld	 QWORD PTR _dFreq$144451[ebp]
  0076c	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  00772	e8 00 00 00 00	 call	 __ftol2_sse
  00777	89 85 bc fb ff
	ff		 mov	 DWORD PTR _Freq$144452[ebp], eax

; 972  :                 Freq -= 62500;

  0077d	8b 85 bc fb ff
	ff		 mov	 eax, DWORD PTR _Freq$144452[ebp]
  00783	2d 24 f4 00 00	 sub	 eax, 62500		; 0000f424H
  00788	89 85 bc fb ff
	ff		 mov	 DWORD PTR _Freq$144452[ebp], eax

; 973  :                 if(Freq < 0)

  0078e	79 0a		 jns	 SHORT $LN95@ProgramLis@2

; 974  :                 {
; 975  :                     Freq = 0;

  00790	c7 85 bc fb ff
	ff 00 00 00 00	 mov	 DWORD PTR _Freq$144452[ebp], 0
$LN95@ProgramLis@2:

; 976  :                 }
; 977  :                 SetFrequencyEditBox(hDlg, Freq);

  0079a	8b 8d bc fb ff
	ff		 mov	 ecx, DWORD PTR _Freq$144452[ebp]
  007a0	51		 push	 ecx
  007a1	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  007a4	52		 push	 edx
  007a5	e8 00 00 00 00	 call	 ?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z ; SetFrequencyEditBox
  007aa	83 c4 08	 add	 esp, 8

; 978  :                 Providers_GetCurrentSource()->SetTunerFrequency(Freq, SelectedVideoFormat(hDlg));

  007ad	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  007b2	89 85 50 f9 ff
	ff		 mov	 DWORD PTR tv357[ebp], eax
  007b8	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  007bb	50		 push	 eax
  007bc	e8 00 00 00 00	 call	 ?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ; SelectedVideoFormat
  007c1	83 c4 04	 add	 esp, 4
  007c4	50		 push	 eax
  007c5	8b 8d bc fb ff
	ff		 mov	 ecx, DWORD PTR _Freq$144452[ebp]
  007cb	51		 push	 ecx
  007cc	8b 95 50 f9 ff
	ff		 mov	 edx, DWORD PTR tv357[ebp]
  007d2	8b 02		 mov	 eax, DWORD PTR [edx]
  007d4	8b 8d 50 f9 ff
	ff		 mov	 ecx, DWORD PTR tv357[ebp]
  007da	8b 90 90 00 00
	00		 mov	 edx, DWORD PTR [eax+144]
  007e0	ff d2		 call	 edx

; 979  :                 ChangeChannelInfo(hDlg, CurrentProgram);

  007e2	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  007e7	50		 push	 eax
  007e8	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  007eb	51		 push	 ecx
  007ec	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  007f1	83 c4 08	 add	 esp, 8

; 980  :             }
; 981  :             else if(LOWORD(wParam) == SB_RIGHT ||

  007f4	e9 f6 00 00 00	 jmp	 $LN93@ProgramLis@2
$LN97@ProgramLis@2:

; 982  :                 LOWORD(wParam) == SB_PAGERIGHT ||
; 983  :                 LOWORD(wParam) == SB_LINERIGHT)

  007f9	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  007fc	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  00802	0f b7 c2	 movzx	 eax, dx
  00805	83 f8 07	 cmp	 eax, 7
  00808	74 25		 je	 SHORT $LN92@ProgramLis@2
  0080a	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  0080d	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  00813	0f b7 d1	 movzx	 edx, cx
  00816	83 fa 03	 cmp	 edx, 3
  00819	74 14		 je	 SHORT $LN92@ProgramLis@2
  0081b	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  0081e	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  00823	0f b7 c8	 movzx	 ecx, ax
  00826	83 f9 01	 cmp	 ecx, 1
  00829	0f 85 c0 00 00
	00		 jne	 $LN93@ProgramLis@2
$LN92@ProgramLis@2:

; 984  :             {
; 985  :                 Edit_GetText(GetDlgItem(hDlg, IDC_FREQUENCY), sbuf, 255);

  0082f	68 ff 00 00 00	 push	 255			; 000000ffH
  00834	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  0083a	52		 push	 edx
  0083b	68 5d 06 00 00	 push	 1629			; 0000065dH
  00840	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00843	50		 push	 eax
  00844	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0084a	50		 push	 eax
  0084b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 986  :                 double dFreq = _tcstod(sbuf, &cLast);

  00851	8d 8d c0 fb ff
	ff		 lea	 ecx, DWORD PTR _cLast$144442[ebp]
  00857	51		 push	 ecx
  00858	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  0085e	52		 push	 edx
  0085f	e8 00 00 00 00	 call	 _wcstod
  00864	83 c4 08	 add	 esp, 8
  00867	dd 9d a4 fb ff
	ff		 fstp	 QWORD PTR _dFreq$144464[ebp]

; 987  :                 long Freq = (long)(dFreq * 1000000.0);

  0086d	dd 85 a4 fb ff
	ff		 fld	 QWORD PTR _dFreq$144464[ebp]
  00873	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  00879	e8 00 00 00 00	 call	 __ftol2_sse
  0087e	89 85 b0 fb ff
	ff		 mov	 DWORD PTR _Freq$144465[ebp], eax

; 988  :                 //++Freq;
; 989  :                 Freq += 62500;

  00884	8b 85 b0 fb ff
	ff		 mov	 eax, DWORD PTR _Freq$144465[ebp]
  0088a	05 24 f4 00 00	 add	 eax, 62500		; 0000f424H
  0088f	89 85 b0 fb ff
	ff		 mov	 DWORD PTR _Freq$144465[ebp], eax

; 990  :                 SetFrequencyEditBox(hDlg, Freq);

  00895	8b 8d b0 fb ff
	ff		 mov	 ecx, DWORD PTR _Freq$144465[ebp]
  0089b	51		 push	 ecx
  0089c	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0089f	52		 push	 edx
  008a0	e8 00 00 00 00	 call	 ?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z ; SetFrequencyEditBox
  008a5	83 c4 08	 add	 esp, 8

; 991  :                 Providers_GetCurrentSource()->SetTunerFrequency(Freq, SelectedVideoFormat(hDlg));

  008a8	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  008ad	89 85 4c f9 ff
	ff		 mov	 DWORD PTR tv395[ebp], eax
  008b3	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  008b6	50		 push	 eax
  008b7	e8 00 00 00 00	 call	 ?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ; SelectedVideoFormat
  008bc	83 c4 04	 add	 esp, 4
  008bf	50		 push	 eax
  008c0	8b 8d b0 fb ff
	ff		 mov	 ecx, DWORD PTR _Freq$144465[ebp]
  008c6	51		 push	 ecx
  008c7	8b 95 4c f9 ff
	ff		 mov	 edx, DWORD PTR tv395[ebp]
  008cd	8b 02		 mov	 eax, DWORD PTR [edx]
  008cf	8b 8d 4c f9 ff
	ff		 mov	 ecx, DWORD PTR tv395[ebp]
  008d5	8b 90 90 00 00
	00		 mov	 edx, DWORD PTR [eax+144]
  008db	ff d2		 call	 edx

; 992  :                 ChangeChannelInfo(hDlg, CurrentProgram);

  008dd	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  008e2	50		 push	 eax
  008e3	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  008e6	51		 push	 ecx
  008e7	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  008ec	83 c4 08	 add	 esp, 8
$LN93@ProgramLis@2:

; 993  :             }
; 994  :         }
; 995  :         break;

  008ef	e9 7e 10 00 00	 jmp	 $LN114@ProgramLis@2
$LN91@ProgramLis@2:

; 996  : 
; 997  :     //Program listing is empty - we go through the current selected presets,
; 998  :     //and we add then to the list with the correct active flag
; 999  :     //wParam = current channel index - lParam = current country code
; 1000 :      case WM_SCAN_CUSTOM_ORDER :
; 1001 :         if (MyInScan == TRUE)

  008f4	83 3d 00 00 00
	00 01		 cmp	 DWORD PTR ?MyInScan@@3HA, 1 ; MyInScan
  008fb	75 67		 jne	 SHORT $LN88@ProgramLis@2

; 1002 :         {
; 1003 :             const CChannelList* sourceChannels = MyCountries.GetChannels(lParam);

  008fd	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00900	52		 push	 edx
  00901	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00906	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  0090b	89 85 a0 fb ff
	ff		 mov	 DWORD PTR _sourceChannels$144469[ebp], eax

; 1004 :             if (wParam < sourceChannels->GetSize())

  00911	8b 8d a0 fb ff
	ff		 mov	 ecx, DWORD PTR _sourceChannels$144469[ebp]
  00917	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  0091c	39 45 10	 cmp	 DWORD PTR _wParam$[ebp], eax
  0091f	73 30		 jae	 SHORT $LN89@ProgramLis@2

; 1005 :             {
; 1006 :                 ScanChannelCustom(hDlg, wParam, lParam);

  00921	8b 45 14	 mov	 eax, DWORD PTR _lParam$[ebp]
  00924	50		 push	 eax
  00925	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  00928	51		 push	 ecx
  00929	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0092c	52		 push	 edx
  0092d	e8 00 00 00 00	 call	 ?ScanChannelCustom@@YAXPAUHWND__@@HH@Z ; ScanChannelCustom
  00932	83 c4 0c	 add	 esp, 12			; 0000000cH

; 1007 :                 PostMessage(hDlg, WM_SCAN_CUSTOM_ORDER, wParam + 1, lParam);

  00935	8b 45 14	 mov	 eax, DWORD PTR _lParam$[ebp]
  00938	50		 push	 eax
  00939	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  0093c	83 c1 01	 add	 ecx, 1
  0093f	51		 push	 ecx
  00940	68 03 0b 00 00	 push	 2819			; 00000b03H
  00945	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00948	52		 push	 edx
  00949	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 1008 :             }
; 1009 :             else

  0094f	eb 13		 jmp	 SHORT $LN88@ProgramLis@2
$LN89@ProgramLis@2:

; 1010 :             {
; 1011 :                 PostMessage(hDlg, WM_SCAN_ABORT, 0, 0);

  00951	6a 00		 push	 0
  00953	6a 00		 push	 0
  00955	68 04 0b 00 00	 push	 2820			; 00000b04H
  0095a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0095d	50		 push	 eax
  0095e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16
$LN88@ProgramLis@2:

; 1012 :             }
; 1013 :         }
; 1014 :         break;

  00964	e9 09 10 00 00	 jmp	 $LN114@ProgramLis@2
$LN87@ProgramLis@2:

; 1015 : 
; 1016 :     //Program listing is empty - we go through the current selected presets,
; 1017 :     //adding and activating only channels that are found
; 1018 :     //wParam = current channel index - lParam = current country code
; 1019 :     case WM_SCAN_PRESET_FREQ :
; 1020 :         if (MyInScan == TRUE)

  00969	83 3d 00 00 00
	00 01		 cmp	 DWORD PTR ?MyInScan@@3HA, 1 ; MyInScan
  00970	75 67		 jne	 SHORT $LN84@ProgramLis@2

; 1021 :         {
; 1022 :             const CChannelList* sourceChannels = MyCountries.GetChannels(lParam);

  00972	8b 4d 14	 mov	 ecx, DWORD PTR _lParam$[ebp]
  00975	51		 push	 ecx
  00976	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  0097b	e8 00 00 00 00	 call	 ?GetChannels@CCountryList@@QBEPBVCCountryChannels@@H@Z ; CCountryList::GetChannels
  00980	89 85 9c fb ff
	ff		 mov	 DWORD PTR _sourceChannels$144474[ebp], eax

; 1023 :             if (wParam < sourceChannels->GetSize())

  00986	8b 8d 9c fb ff
	ff		 mov	 ecx, DWORD PTR _sourceChannels$144474[ebp]
  0098c	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00991	39 45 10	 cmp	 DWORD PTR _wParam$[ebp], eax
  00994	73 30		 jae	 SHORT $LN85@ProgramLis@2

; 1024 :             {
; 1025 :                 ScanChannelPreset(hDlg, wParam, lParam);

  00996	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00999	52		 push	 edx
  0099a	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  0099d	50		 push	 eax
  0099e	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  009a1	51		 push	 ecx
  009a2	e8 00 00 00 00	 call	 ?ScanChannelPreset@@YAXPAUHWND__@@HH@Z ; ScanChannelPreset
  009a7	83 c4 0c	 add	 esp, 12			; 0000000cH

; 1026 :                 PostMessage(hDlg, WM_SCAN_PRESET_FREQ, wParam + 1, lParam);

  009aa	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  009ad	52		 push	 edx
  009ae	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  009b1	83 c0 01	 add	 eax, 1
  009b4	50		 push	 eax
  009b5	68 01 0b 00 00	 push	 2817			; 00000b01H
  009ba	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  009bd	51		 push	 ecx
  009be	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 1027 :             }
; 1028 :             else

  009c4	eb 13		 jmp	 SHORT $LN84@ProgramLis@2
$LN85@ProgramLis@2:

; 1029 :             {
; 1030 :                 PostMessage(hDlg, WM_SCAN_ABORT, 0, 0);

  009c6	6a 00		 push	 0
  009c8	6a 00		 push	 0
  009ca	68 04 0b 00 00	 push	 2820			; 00000b04H
  009cf	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  009d2	52		 push	 edx
  009d3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16
$LN84@ProgramLis@2:

; 1031 :             }
; 1032 :         }
; 1033 :         break;

  009d9	e9 94 0f 00 00	 jmp	 $LN114@ProgramLis@2
$LN83@ProgramLis@2:

; 1034 : 
; 1035 :         //Scans using settings and adds to current list
; 1036 :         //wParam = current channel frequency - lParam = max frequency
; 1037 :     case WM_SCAN_AUTO :
; 1038 :         if (MyInScan == TRUE)

  009de	83 3d 00 00 00
	00 01		 cmp	 DWORD PTR ?MyInScan@@3HA, 1 ; MyInScan
  009e5	0f 85 95 00 00
	00		 jne	 $LN78@ProgramLis@2

; 1039 :         {
; 1040 :             DWORD newFrequency = ScanFrequency(hDlg, wParam);

  009eb	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  009ee	50		 push	 eax
  009ef	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  009f2	51		 push	 ecx
  009f3	e8 00 00 00 00	 call	 ?ScanFrequency@@YAKPAUHWND__@@K@Z ; ScanFrequency
  009f8	83 c4 08	 add	 esp, 8
  009fb	89 85 98 fb ff
	ff		 mov	 DWORD PTR _newFrequency$144479[ebp], eax

; 1041 : 
; 1042 :             if (newFrequency < lParam)

  00a01	8b 95 98 fb ff
	ff		 mov	 edx, DWORD PTR _newFrequency$144479[ebp]
  00a07	3b 55 14	 cmp	 edx, DWORD PTR _lParam$[ebp]
  00a0a	73 61		 jae	 SHORT $LN81@ProgramLis@2

; 1043 :             {
; 1044 :                 if (MyChannels.GetSize() >= MAX_CHANNELS)

  00a0c	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00a11	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00a16	3d ff 00 00 00	 cmp	 eax, 255		; 000000ffH
  00a1b	7c 2b		 jl	 SHORT $LN80@ProgramLis@2

; 1045 :                 {
; 1046 :                     MessageBox(
; 1047 :                                 hDlg,
; 1048 :                                 _T("Number of channels limit reached.\nRemove some channels before proceeding further"),
; 1049 :                                 _T("Channel Limit Reached"),
; 1050 :                                 MB_OK | MB_ICONINFORMATION | MB_APPLMODAL
; 1051 :                               );

  00a1d	6a 40		 push	 64			; 00000040H
  00a1f	68 00 00 00 00	 push	 OFFSET ??_C@_1CM@JMJHHIEA@?$AAC?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAL?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAR?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd?$AA?$AA@
  00a24	68 00 00 00 00	 push	 OFFSET ??_C@_1KC@JBDMNBAL@?$AAN?$AAu?$AAm?$AAb?$AAe?$AAr?$AA?5?$AAo?$AAf?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AAs?$AA?5?$AAl?$AAi?$AAm?$AAi?$AAt?$AA?5?$AAr?$AAe?$AAa?$AAc?$AAh?$AAe?$AAd@
  00a29	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00a2c	50		 push	 eax
  00a2d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__MessageBoxW@16

; 1052 :                     PostMessage(hDlg, WM_SCAN_ABORT, 0, 0);

  00a33	6a 00		 push	 0
  00a35	6a 00		 push	 0
  00a37	68 04 0b 00 00	 push	 2820			; 00000b04H
  00a3c	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00a3f	51		 push	 ecx
  00a40	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16

; 1053 :                 }
; 1054 :                 else

  00a46	eb 23		 jmp	 SHORT $LN79@ProgramLis@2
$LN80@ProgramLis@2:

; 1055 :                 {
; 1056 :                     PostMessage(hDlg, WM_SCAN_AUTO, wParam + SelectedScanSteps(hDlg), lParam);

  00a48	8b 55 14	 mov	 edx, DWORD PTR _lParam$[ebp]
  00a4b	52		 push	 edx
  00a4c	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00a4f	50		 push	 eax
  00a50	e8 00 00 00 00	 call	 ?SelectedScanSteps@@YAKPAUHWND__@@@Z ; SelectedScanSteps
  00a55	83 c4 04	 add	 esp, 4
  00a58	03 45 10	 add	 eax, DWORD PTR _wParam$[ebp]
  00a5b	50		 push	 eax
  00a5c	68 02 0b 00 00	 push	 2818			; 00000b02H
  00a61	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00a64	51		 push	 ecx
  00a65	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16
$LN79@ProgramLis@2:

; 1057 :                 }
; 1058 :             }
; 1059 :             else

  00a6b	eb 13		 jmp	 SHORT $LN78@ProgramLis@2
$LN81@ProgramLis@2:

; 1060 :             {
; 1061 :                 PostMessage(hDlg, WM_SCAN_ABORT, 0, 0);

  00a6d	6a 00		 push	 0
  00a6f	6a 00		 push	 0
  00a71	68 04 0b 00 00	 push	 2820			; 00000b04H
  00a76	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00a79	52		 push	 edx
  00a7a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__PostMessageW@16
$LN78@ProgramLis@2:

; 1062 :             }
; 1063 :         }
; 1064 :         break;

  00a80	e9 ed 0e 00 00	 jmp	 $LN114@ProgramLis@2
$LN77@ProgramLis@2:

; 1065 : 
; 1066 :     case WM_SCAN_ABORT :
; 1067 :         EndScan(hDlg);

  00a85	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00a88	50		 push	 eax
  00a89	e8 00 00 00 00	 call	 ?EndScan@@YAXPAUHWND__@@@Z ; EndScan
  00a8e	83 c4 04	 add	 esp, 4

; 1068 :         break;

  00a91	e9 dc 0e 00 00	 jmp	 $LN114@ProgramLis@2
$LN76@ProgramLis@2:

; 1069 : 
; 1070 :     case WM_VKEYTOITEM:
; 1071 :         if(LOWORD(wParam) == VK_DELETE && (HWND)lParam == GetDlgItem(hDlg, IDC_PROGRAMLIST))

  00a96	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  00a99	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  00a9f	0f b7 d1	 movzx	 edx, cx
  00aa2	83 fa 2e	 cmp	 edx, 46			; 0000002eH
  00aa5	75 2a		 jne	 SHORT $LN75@ProgramLis@2
  00aa7	68 c4 06 00 00	 push	 1732			; 000006c4H
  00aac	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00aaf	50		 push	 eax
  00ab0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00ab6	39 45 14	 cmp	 DWORD PTR _lParam$[ebp], eax
  00ab9	75 16		 jne	 SHORT $LN75@ProgramLis@2

; 1072 :         {
; 1073 :             SendMessage(hDlg, WM_COMMAND, IDC_REMOVE, 0);

  00abb	6a 00		 push	 0
  00abd	68 e0 06 00 00	 push	 1760			; 000006e0H
  00ac2	68 11 01 00 00	 push	 273			; 00000111H
  00ac7	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00aca	51		 push	 ecx
  00acb	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN75@ProgramLis@2:

; 1074 :         }
; 1075 :         // let the list box handle any key presses.
; 1076 :         return -1;

  00ad1	83 c8 ff	 or	 eax, -1
  00ad4	e9 2f 11 00 00	 jmp	 $LN116@ProgramLis@2
$LN74@ProgramLis@2:

; 1077 : 
; 1078 :     case WM_COMMAND:
; 1079 :         switch(LOWORD(wParam))

  00ad9	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  00adc	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  00ae2	0f b7 c2	 movzx	 eax, dx
  00ae5	89 85 48 f9 ff
	ff		 mov	 DWORD PTR tv497[ebp], eax
  00aeb	81 bd 48 f9 ff
	ff 78 05 00 00	 cmp	 DWORD PTR tv497[ebp], 1400 ; 00000578H
  00af5	7f 3c		 jg	 SHORT $LN122@ProgramLis@2
  00af7	81 bd 48 f9 ff
	ff 78 05 00 00	 cmp	 DWORD PTR tv497[ebp], 1400 ; 00000578H
  00b01	0f 84 84 05 00
	00		 je	 $LN48@ProgramLis@2
  00b07	83 bd 48 f9 ff
	ff 01		 cmp	 DWORD PTR tv497[ebp], 1
  00b0e	0f 84 b1 0c 00
	00		 je	 $LN22@ProgramLis@2
  00b14	83 bd 48 f9 ff
	ff 02		 cmp	 DWORD PTR tv497[ebp], 2
  00b1b	0f 84 aa 0d 00
	00		 je	 $LN19@ProgramLis@2
  00b21	83 bd 48 f9 ff
	ff 03		 cmp	 DWORD PTR tv497[ebp], 3
  00b28	0f 84 52 0b 00
	00		 je	 $LN35@ProgramLis@2
  00b2e	e9 3f 0e 00 00	 jmp	 $LN15@ProgramLis@2
$LN122@ProgramLis@2:
  00b33	81 bd 48 f9 ff
	ff 53 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1619 ; 00000653H
  00b3d	7f 43		 jg	 SHORT $LN123@ProgramLis@2
  00b3f	81 bd 48 f9 ff
	ff 53 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1619 ; 00000653H
  00b49	0f 84 6f 05 00
	00		 je	 $LN46@ProgramLis@2
  00b4f	8b 8d 48 f9 ff
	ff		 mov	 ecx, DWORD PTR tv497[ebp]
  00b55	81 e9 79 05 00
	00		 sub	 ecx, 1401		; 00000579H
  00b5b	89 8d 48 f9 ff
	ff		 mov	 DWORD PTR tv497[ebp], ecx
  00b61	83 bd 48 f9 ff
	ff 68		 cmp	 DWORD PTR tv497[ebp], 104 ; 00000068H
  00b68	0f 87 04 0e 00
	00		 ja	 $LN15@ProgramLis@2
  00b6e	8b 95 48 f9 ff
	ff		 mov	 edx, DWORD PTR tv497[ebp]
  00b74	0f b6 82 00 00
	00 00		 movzx	 eax, BYTE PTR $LN139@ProgramLis@2[edx]
  00b7b	ff 24 85 00 00
	00 00		 jmp	 DWORD PTR $LN142@ProgramLis@2[eax*4]
$LN123@ProgramLis@2:
  00b82	81 bd 48 f9 ff
	ff e0 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1760 ; 000006e0H
  00b8c	7f 41		 jg	 SHORT $LN124@ProgramLis@2
  00b8e	81 bd 48 f9 ff
	ff e0 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1760 ; 000006e0H
  00b98	0f 84 4b 08 00
	00		 je	 $LN42@ProgramLis@2
  00b9e	81 bd 48 f9 ff
	ff 9f 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1695 ; 0000069fH
  00ba8	0f 84 6f 04 00
	00		 je	 $LN52@ProgramLis@2
  00bae	81 bd 48 f9 ff
	ff a0 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1696 ; 000006a0H
  00bb8	0f 84 96 04 00
	00		 je	 $LN50@ProgramLis@2
  00bbe	81 bd 48 f9 ff
	ff c4 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1732 ; 000006c4H
  00bc8	74 3a		 je	 SHORT $LN71@ProgramLis@2
  00bca	e9 a3 0d 00 00	 jmp	 $LN15@ProgramLis@2
$LN124@ProgramLis@2:
  00bcf	81 bd 48 f9 ff
	ff f3 06 00 00	 cmp	 DWORD PTR tv497[ebp], 1779 ; 000006f3H
  00bd9	0f 84 c5 0a 00
	00		 je	 $LN33@ProgramLis@2
  00bdf	81 bd 48 f9 ff
	ff 5b 07 00 00	 cmp	 DWORD PTR tv497[ebp], 1883 ; 0000075bH
  00be9	0f 84 f5 08 00
	00		 je	 $LN39@ProgramLis@2
  00bef	81 bd 48 f9 ff
	ff 6a 09 00 00	 cmp	 DWORD PTR tv497[ebp], 2410 ; 0000096aH
  00bf9	0f 84 4c 0d 00
	00		 je	 $LN17@ProgramLis@2
  00bff	e9 6e 0d 00 00	 jmp	 $LN15@ProgramLis@2
$LN71@ProgramLis@2:

; 1080 :         {
; 1081 :         case IDC_PROGRAMLIST:
; 1082 :             if ((HIWORD(wParam) == LBN_SELCHANGE) && (MyInUpdate == FALSE) && (FALSE == MyInScan))

  00c04	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  00c07	c1 e9 10	 shr	 ecx, 16			; 00000010H
  00c0a	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  00c10	0f b7 d1	 movzx	 edx, cx
  00c13	83 fa 01	 cmp	 edx, 1
  00c16	0f 85 a1 00 00
	00		 jne	 $LN70@ProgramLis@2
  00c1c	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  00c23	0f 85 94 00 00
	00		 jne	 $LN70@ProgramLis@2
  00c29	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInScan@@3HA, 0 ; MyInScan
  00c30	0f 85 87 00 00
	00		 jne	 $LN70@ProgramLis@2

; 1083 :             {
; 1084 :                 i = ListBox_GetCurSel(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  00c36	6a 00		 push	 0
  00c38	6a 00		 push	 0
  00c3a	68 88 01 00 00	 push	 392			; 00000188H
  00c3f	68 c4 06 00 00	 push	 1732			; 000006c4H
  00c44	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00c47	50		 push	 eax
  00c48	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00c4e	50		 push	 eax
  00c4f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00c55	89 85 e8 fd ff
	ff		 mov	 DWORD PTR _i$[ebp], eax

; 1085 : 
; 1086 :                 if ((i >= 0) && (i < MyChannels.GetSize()))

  00c5b	83 bd e8 fd ff
	ff 00		 cmp	 DWORD PTR _i$[ebp], 0
  00c62	7c 31		 jl	 SHORT $LN69@ProgramLis@2
  00c64	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00c69	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  00c6e	39 85 e8 fd ff
	ff		 cmp	 DWORD PTR _i$[ebp], eax
  00c74	7d 1f		 jge	 SHORT $LN69@ProgramLis@2

; 1087 :                 {
; 1088 :                     CurrentProgram = i;

  00c76	8b 8d e8 fd ff
	ff		 mov	 ecx, DWORD PTR _i$[ebp]
  00c7c	89 0d 00 00 00
	00		 mov	 DWORD PTR ?CurrentProgram@@3JA, ecx ; CurrentProgram

; 1089 :                     Channel_Change(CurrentProgram);

  00c82	6a 00		 push	 0
  00c84	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00c8a	52		 push	 edx
  00c8b	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  00c90	83 c4 08	 add	 esp, 8

; 1090 :                 }
; 1091 :                 else

  00c93	eb 0a		 jmp	 SHORT $LN68@ProgramLis@2
$LN69@ProgramLis@2:

; 1092 :                 {
; 1093 :                     CurrentProgram = 0;

  00c95	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, 0 ; CurrentProgram
$LN68@ProgramLis@2:

; 1094 :                 }
; 1095 :                 UpdateDetails(hDlg, CurrentProgram);

  00c9f	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00ca4	50		 push	 eax
  00ca5	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00ca8	51		 push	 ecx
  00ca9	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@H@Z ; UpdateDetails
  00cae	83 c4 08	 add	 esp, 8

; 1096 :                 UpdateAutoScanDetails(hDlg);

  00cb1	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00cb4	52		 push	 edx
  00cb5	e8 00 00 00 00	 call	 ?UpdateAutoScanDetails@@YAXPAUHWND__@@@Z ; UpdateAutoScanDetails
  00cba	83 c4 04	 add	 esp, 4
$LN70@ProgramLis@2:

; 1097 :             }
; 1098 :             break;

  00cbd	e9 b0 0c 00 00	 jmp	 $LN72@ProgramLis@2
$LN67@ProgramLis@2:

; 1099 : 
; 1100 :         case IDC_COUNTRY:
; 1101 :             if(HIWORD(wParam) == LBN_SELCHANGE)

  00cc2	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  00cc5	c1 e8 10	 shr	 eax, 16			; 00000010H
  00cc8	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  00ccd	0f b7 c8	 movzx	 ecx, ax
  00cd0	83 f9 01	 cmp	 ecx, 1
  00cd3	0f 85 d4 00 00
	00		 jne	 $LN66@ProgramLis@2

; 1102 :             {
; 1103 :                 int NewCountryCode = ComboBox_GetCurSel(GetDlgItem(hDlg, IDC_COUNTRY));

  00cd9	6a 00		 push	 0
  00cdb	6a 00		 push	 0
  00cdd	68 47 01 00 00	 push	 327			; 00000147H
  00ce2	68 b7 05 00 00	 push	 1463			; 000005b7H
  00ce7	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00cea	52		 push	 edx
  00ceb	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00cf1	50		 push	 eax
  00cf2	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00cf8	89 85 94 fb ff
	ff		 mov	 DWORD PTR _NewCountryCode$144511[ebp], eax

; 1104 :                 if(NewCountryCode <  MyCountries.GetSize())

  00cfe	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00d03	e8 00 00 00 00	 call	 ?GetSize@CCountryList@@QBEHXZ ; CCountryList::GetSize
  00d08	39 85 94 fb ff
	ff		 cmp	 DWORD PTR _NewCountryCode$144511[ebp], eax
  00d0e	7d 5a		 jge	 SHORT $LN65@ProgramLis@2

; 1105 :                 {
; 1106 :                     CountryCode = NewCountryCode;

  00d10	8b 85 94 fb ff
	ff		 mov	 eax, DWORD PTR _NewCountryCode$144511[ebp]
  00d16	a3 00 00 00 00	 mov	 DWORD PTR ?CountryCode@@3HA, eax ; CountryCode

; 1107 :                     RefreshChannelList(hDlg, CountryCode);

  00d1b	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CountryCode@@3HA ; CountryCode
  00d21	51		 push	 ecx
  00d22	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00d25	52		 push	 edx
  00d26	e8 00 00 00 00	 call	 ?RefreshChannelList@@YAXPAUHWND__@@H@Z ; RefreshChannelList
  00d2b	83 c4 08	 add	 esp, 8

; 1108 :                     if (Button_GetCheck(GetDlgItem(hDlg, IDC_CUSTOMCHANNELORDER)) == BST_CHECKED)

  00d2e	6a 00		 push	 0
  00d30	6a 00		 push	 0
  00d32	68 f0 00 00 00	 push	 240			; 000000f0H
  00d37	68 ba 05 00 00	 push	 1466			; 000005baH
  00d3c	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00d3f	50		 push	 eax
  00d40	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00d46	50		 push	 eax
  00d47	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00d4d	83 f8 01	 cmp	 eax, 1
  00d50	75 0c		 jne	 SHORT $LN64@ProgramLis@2

; 1109 :                     {
; 1110 :                         MyScanMode = SCAN_MODE_CUSTOM_ORDER;

  00d52	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, 1 ; MyScanMode

; 1111 :                     }
; 1112 :                     else

  00d5c	eb 0a		 jmp	 SHORT $LN63@ProgramLis@2
$LN64@ProgramLis@2:

; 1113 :                     {
; 1114 :                         MyScanMode = SCAN_MODE_PRESETS;

  00d5e	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, 0 ; MyScanMode
$LN63@ProgramLis@2:

; 1115 :                     }
; 1116 :                 }
; 1117 :                 else

  00d68	eb 29		 jmp	 SHORT $LN62@ProgramLis@2
$LN65@ProgramLis@2:

; 1118 :                 {
; 1119 :                     ComboBox_ResetContent(GetDlgItem(hDlg, IDC_CHANNEL));

  00d6a	6a 00		 push	 0
  00d6c	6a 00		 push	 0
  00d6e	68 4b 01 00 00	 push	 331			; 0000014bH
  00d73	68 98 05 00 00	 push	 1432			; 00000598H
  00d78	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00d7b	51		 push	 ecx
  00d7c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00d82	50		 push	 eax
  00d83	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 1120 :                     MyScanMode = SCAN_MODE_FULL_FREQUENCY;

  00d89	c7 05 00 00 00
	00 02 00 00 00	 mov	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, 2 ; MyScanMode
$LN62@ProgramLis@2:

; 1121 :                 }
; 1122 :                 UpdateAutoScanDetails(hDlg);

  00d93	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00d96	52		 push	 edx
  00d97	e8 00 00 00 00	 call	 ?UpdateAutoScanDetails@@YAXPAUHWND__@@@Z ; UpdateAutoScanDetails
  00d9c	83 c4 04	 add	 esp, 4

; 1123 :                 UpdateEnabledState(hDlg, TRUE);

  00d9f	6a 01		 push	 1
  00da1	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00da4	50		 push	 eax
  00da5	e8 00 00 00 00	 call	 ?UpdateEnabledState@@YAXPAUHWND__@@H@Z ; UpdateEnabledState
  00daa	83 c4 08	 add	 esp, 8
$LN66@ProgramLis@2:

; 1124 :             }
; 1125 :             break;

  00dad	e9 c0 0b 00 00	 jmp	 $LN72@ProgramLis@2
$LN61@ProgramLis@2:

; 1126 : 
; 1127 :         case IDC_CUSTOMCHANNELORDER:
; 1128 :             if(HIWORD(wParam) == BN_CLICKED)

  00db2	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  00db5	c1 e9 10	 shr	 ecx, 16			; 00000010H
  00db8	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  00dbe	0f b7 d1	 movzx	 edx, cx
  00dc1	85 d2		 test	 edx, edx
  00dc3	75 48		 jne	 SHORT $LN60@ProgramLis@2

; 1129 :             {
; 1130 :                 if (Button_GetCheck(GetDlgItem(hDlg, IDC_CUSTOMCHANNELORDER)) == BST_CHECKED)

  00dc5	6a 00		 push	 0
  00dc7	6a 00		 push	 0
  00dc9	68 f0 00 00 00	 push	 240			; 000000f0H
  00dce	68 ba 05 00 00	 push	 1466			; 000005baH
  00dd3	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00dd6	50		 push	 eax
  00dd7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00ddd	50		 push	 eax
  00dde	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00de4	83 f8 01	 cmp	 eax, 1
  00de7	75 0c		 jne	 SHORT $LN59@ProgramLis@2

; 1131 :                 {
; 1132 :                     MyScanMode = SCAN_MODE_CUSTOM_ORDER;

  00de9	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, 1 ; MyScanMode

; 1133 :                 }
; 1134 :                 else

  00df3	eb 0a		 jmp	 SHORT $LN58@ProgramLis@2
$LN59@ProgramLis@2:

; 1135 :                 {
; 1136 :                     MyScanMode = SCAN_MODE_PRESETS;

  00df5	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, 0 ; MyScanMode
$LN58@ProgramLis@2:

; 1137 :                 }
; 1138 : 
; 1139 :                 UpdateEnabledState(hDlg, TRUE);

  00dff	6a 01		 push	 1
  00e01	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00e04	51		 push	 ecx
  00e05	e8 00 00 00 00	 call	 ?UpdateEnabledState@@YAXPAUHWND__@@H@Z ; UpdateEnabledState
  00e0a	83 c4 08	 add	 esp, 8
$LN60@ProgramLis@2:

; 1140 :             }
; 1141 :             break;

  00e0d	e9 60 0b 00 00	 jmp	 $LN72@ProgramLis@2
$LN57@ProgramLis@2:

; 1142 : 
; 1143 :         case IDC_CHANNEL:
; 1144 :             if(HIWORD(wParam) == CBN_SELCHANGE && MyInUpdate == FALSE)

  00e12	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  00e15	c1 ea 10	 shr	 edx, 16			; 00000010H
  00e18	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  00e1e	0f b7 c2	 movzx	 eax, dx
  00e21	83 f8 01	 cmp	 eax, 1
  00e24	0f 85 2a 01 00
	00		 jne	 $LN55@ProgramLis@2
  00e2a	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  00e31	0f 85 1d 01 00
	00		 jne	 $LN55@ProgramLis@2

; 1145 :             {
; 1146 :                 int ChannelNum = ComboBox_GetCurSel(GetDlgItem(hDlg, IDC_CHANNEL));

  00e37	6a 00		 push	 0
  00e39	6a 00		 push	 0
  00e3b	68 47 01 00 00	 push	 327			; 00000147H
  00e40	68 98 05 00 00	 push	 1432			; 00000598H
  00e45	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00e48	51		 push	 ecx
  00e49	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00e4f	50		 push	 eax
  00e50	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00e56	89 85 8c fb ff
	ff		 mov	 DWORD PTR _ChannelNum$144534[ebp], eax

; 1147 :                 CChannel* Channel = (CChannel*)ComboBox_GetItemData(GetDlgItem(hDlg, IDC_CHANNEL), ChannelNum);

  00e5c	6a 00		 push	 0
  00e5e	8b 95 8c fb ff
	ff		 mov	 edx, DWORD PTR _ChannelNum$144534[ebp]
  00e64	52		 push	 edx
  00e65	68 50 01 00 00	 push	 336			; 00000150H
  00e6a	68 98 05 00 00	 push	 1432			; 00000598H
  00e6f	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00e72	50		 push	 eax
  00e73	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00e79	50		 push	 eax
  00e7a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  00e80	89 85 90 fb ff
	ff		 mov	 DWORD PTR _Channel$144537[ebp], eax

; 1148 :                 if(Channel != NULL && Channel != (CChannel*)(-1))

  00e86	83 bd 90 fb ff
	ff 00		 cmp	 DWORD PTR _Channel$144537[ebp], 0
  00e8d	0f 84 c1 00 00
	00		 je	 $LN55@ProgramLis@2
  00e93	83 bd 90 fb ff
	ff ff		 cmp	 DWORD PTR _Channel$144537[ebp], -1
  00e9a	0f 84 b4 00 00
	00		 je	 $LN55@ProgramLis@2

; 1149 :                 {
; 1150 :                     long Freq = Channel->GetFrequency();

  00ea0	8b 8d 90 fb ff
	ff		 mov	 ecx, DWORD PTR _Channel$144537[ebp]
  00ea6	e8 00 00 00 00	 call	 ?GetFrequency@CChannel@@QBEKXZ ; CChannel::GetFrequency
  00eab	89 85 88 fb ff
	ff		 mov	 DWORD PTR _Freq$144545[ebp], eax

; 1151 :                     SetFrequencyEditBox(hDlg, Freq);

  00eb1	8b 8d 88 fb ff
	ff		 mov	 ecx, DWORD PTR _Freq$144545[ebp]
  00eb7	51		 push	 ecx
  00eb8	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00ebb	52		 push	 edx
  00ebc	e8 00 00 00 00	 call	 ?SetFrequencyEditBox@@YAXPAUHWND__@@J@Z ; SetFrequencyEditBox
  00ec1	83 c4 08	 add	 esp, 8

; 1152 :                     ScrollBar_SetPos(GetDlgItem(hDlg, IDC_FINETUNE), 50, FALSE);

  00ec4	6a 00		 push	 0
  00ec6	6a 32		 push	 50			; 00000032H
  00ec8	6a 02		 push	 2
  00eca	68 52 06 00 00	 push	 1618			; 00000652H
  00ecf	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00ed2	50		 push	 eax
  00ed3	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00ed9	50		 push	 eax
  00eda	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetScrollPos@16

; 1153 :                     ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_FORMAT), Channel->GetFormat() + 1);

  00ee0	6a 00		 push	 0
  00ee2	8b 8d 90 fb ff
	ff		 mov	 ecx, DWORD PTR _Channel$144537[ebp]
  00ee8	e8 00 00 00 00	 call	 ?GetFormat@CChannel@@QBE?AW4eVideoFormat@@XZ ; CChannel::GetFormat
  00eed	83 c0 01	 add	 eax, 1
  00ef0	50		 push	 eax
  00ef1	68 4e 01 00 00	 push	 334			; 0000014eH
  00ef6	68 53 06 00 00	 push	 1619			; 00000653H
  00efb	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  00efe	51		 push	 ecx
  00eff	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00f05	50		 push	 eax
  00f06	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 1154 :                     Providers_GetCurrentSource()->SetTunerFrequency(Freq, SelectedVideoFormat(hDlg));

  00f0c	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00f11	89 85 44 f9 ff
	ff		 mov	 DWORD PTR tv626[ebp], eax
  00f17	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00f1a	52		 push	 edx
  00f1b	e8 00 00 00 00	 call	 ?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ; SelectedVideoFormat
  00f20	83 c4 04	 add	 esp, 4
  00f23	50		 push	 eax
  00f24	8b 85 88 fb ff
	ff		 mov	 eax, DWORD PTR _Freq$144545[ebp]
  00f2a	50		 push	 eax
  00f2b	8b 8d 44 f9 ff
	ff		 mov	 ecx, DWORD PTR tv626[ebp]
  00f31	8b 11		 mov	 edx, DWORD PTR [ecx]
  00f33	8b 8d 44 f9 ff
	ff		 mov	 ecx, DWORD PTR tv626[ebp]
  00f39	8b 82 90 00 00
	00		 mov	 eax, DWORD PTR [edx+144]
  00f3f	ff d0		 call	 eax

; 1155 :                     ChangeChannelInfo(hDlg, CurrentProgram);

  00f41	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  00f47	51		 push	 ecx
  00f48	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  00f4b	52		 push	 edx
  00f4c	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  00f51	83 c4 08	 add	 esp, 8
$LN55@ProgramLis@2:

; 1156 :                 }
; 1157 :             }
; 1158 :             break;

  00f54	e9 19 0a 00 00	 jmp	 $LN72@ProgramLis@2
$LN54@ProgramLis@2:

; 1159 : 
; 1160 :         case IDC_SETFREQ:
; 1161 :             if(HIWORD(wParam) == BN_CLICKED && MyInUpdate == FALSE)

  00f59	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  00f5c	c1 e8 10	 shr	 eax, 16			; 00000010H
  00f5f	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  00f64	0f b7 c8	 movzx	 ecx, ax
  00f67	85 c9		 test	 ecx, ecx
  00f69	0f 85 a9 00 00
	00		 jne	 $LN53@ProgramLis@2
  00f6f	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  00f76	0f 85 9c 00 00
	00		 jne	 $LN53@ProgramLis@2

; 1162 :             {
; 1163 :                 TCHAR* cLast;
; 1164 :                 Edit_GetText(GetDlgItem(hDlg, IDC_FREQUENCY), sbuf, 255);

  00f7c	68 ff 00 00 00	 push	 255			; 000000ffH
  00f81	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  00f87	52		 push	 edx
  00f88	68 5d 06 00 00	 push	 1629			; 0000065dH
  00f8d	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00f90	50		 push	 eax
  00f91	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  00f97	50		 push	 eax
  00f98	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 1165 :                 double dFreq = _tcstod(sbuf, &cLast);

  00f9e	8d 8d 80 fb ff
	ff		 lea	 ecx, DWORD PTR _cLast$144554[ebp]
  00fa4	51		 push	 ecx
  00fa5	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  00fab	52		 push	 edx
  00fac	e8 00 00 00 00	 call	 _wcstod
  00fb1	83 c4 08	 add	 esp, 8
  00fb4	dd 9d 74 fb ff
	ff		 fstp	 QWORD PTR _dFreq$144555[ebp]

; 1166 :                 long Freq = (long)(dFreq * 1000000.0);

  00fba	dd 85 74 fb ff
	ff		 fld	 QWORD PTR _dFreq$144555[ebp]
  00fc0	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  00fc6	e8 00 00 00 00	 call	 __ftol2_sse
  00fcb	89 85 84 fb ff
	ff		 mov	 DWORD PTR _Freq$144556[ebp], eax

; 1167 :                 Providers_GetCurrentSource()->SetTunerFrequency(Freq, SelectedVideoFormat(hDlg));

  00fd1	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  00fd6	89 85 40 f9 ff
	ff		 mov	 DWORD PTR tv655[ebp], eax
  00fdc	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  00fdf	50		 push	 eax
  00fe0	e8 00 00 00 00	 call	 ?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ; SelectedVideoFormat
  00fe5	83 c4 04	 add	 esp, 4
  00fe8	50		 push	 eax
  00fe9	8b 8d 84 fb ff
	ff		 mov	 ecx, DWORD PTR _Freq$144556[ebp]
  00fef	51		 push	 ecx
  00ff0	8b 95 40 f9 ff
	ff		 mov	 edx, DWORD PTR tv655[ebp]
  00ff6	8b 02		 mov	 eax, DWORD PTR [edx]
  00ff8	8b 8d 40 f9 ff
	ff		 mov	 ecx, DWORD PTR tv655[ebp]
  00ffe	8b 90 90 00 00
	00		 mov	 edx, DWORD PTR [eax+144]
  01004	ff d2		 call	 edx

; 1168 :                 ChangeChannelInfo(hDlg, CurrentProgram);

  01006	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0100b	50		 push	 eax
  0100c	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0100f	51		 push	 ecx
  01010	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  01015	83 c4 08	 add	 esp, 8
$LN53@ProgramLis@2:

; 1169 :             }
; 1170 :             break;

  01018	e9 55 09 00 00	 jmp	 $LN72@ProgramLis@2
$LN52@ProgramLis@2:

; 1171 : 
; 1172 :         case IDC_NAME:
; 1173 :             //(DB) Although it's nice to have
; 1174 :             //the listbox updated immediately,
; 1175 :             //reacting to each textbox change is not good
; 1176 :             //according to the way ChangeChannelInfo is currently implemented
; 1177 :             if(HIWORD(wParam) == EN_CHANGE && MyInUpdate == FALSE)

  0101d	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  01020	c1 ea 10	 shr	 edx, 16			; 00000010H
  01023	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  01029	0f b7 c2	 movzx	 eax, dx
  0102c	3d 00 03 00 00	 cmp	 eax, 768		; 00000300H
  01031	75 1c		 jne	 SHORT $LN51@ProgramLis@2
  01033	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  0103a	75 13		 jne	 SHORT $LN51@ProgramLis@2

; 1178 :             {
; 1179 :                 ChangeChannelInfo(hDlg, CurrentProgram);

  0103c	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01042	51		 push	 ecx
  01043	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01046	52		 push	 edx
  01047	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  0104c	83 c4 08	 add	 esp, 8
$LN51@ProgramLis@2:

; 1180 :             }
; 1181 :             break;

  0104f	e9 1e 09 00 00	 jmp	 $LN72@ProgramLis@2
$LN50@ProgramLis@2:

; 1182 : 
; 1183 :         case IDC_EPGNAME:
; 1184 :             //(DB) Same comment as for IDC_NAME
; 1185 :             if(HIWORD(wParam) == EN_CHANGE && MyInUpdate == FALSE)

  01054	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  01057	c1 e8 10	 shr	 eax, 16			; 00000010H
  0105a	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  0105f	0f b7 c8	 movzx	 ecx, ax
  01062	81 f9 00 03 00
	00		 cmp	 ecx, 768		; 00000300H
  01068	75 1c		 jne	 SHORT $LN49@ProgramLis@2
  0106a	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  01071	75 13		 jne	 SHORT $LN49@ProgramLis@2

; 1186 :             {
; 1187 :                 ChangeChannelInfo(hDlg, CurrentProgram);

  01073	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01079	52		 push	 edx
  0107a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0107d	50		 push	 eax
  0107e	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  01083	83 c4 08	 add	 esp, 8
$LN49@ProgramLis@2:

; 1188 :             }
; 1189 :             break;

  01086	e9 e7 08 00 00	 jmp	 $LN72@ProgramLis@2
$LN48@ProgramLis@2:

; 1190 : 
; 1191 :         case IDC_ACTIVE:
; 1192 :             //(DB) Same comment as for IDC_NAME
; 1193 :             if(HIWORD(wParam) == BN_CLICKED && MyInUpdate == FALSE)

  0108b	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  0108e	c1 e9 10	 shr	 ecx, 16			; 00000010H
  01091	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  01097	0f b7 d1	 movzx	 edx, cx
  0109a	85 d2		 test	 edx, edx
  0109c	75 1b		 jne	 SHORT $LN47@ProgramLis@2
  0109e	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  010a5	75 12		 jne	 SHORT $LN47@ProgramLis@2

; 1194 :             {
; 1195 :                 ChangeChannelInfo(hDlg, CurrentProgram);

  010a7	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  010ac	50		 push	 eax
  010ad	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  010b0	51		 push	 ecx
  010b1	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  010b6	83 c4 08	 add	 esp, 8
$LN47@ProgramLis@2:

; 1196 :             }
; 1197 :             break;

  010b9	e9 b4 08 00 00	 jmp	 $LN72@ProgramLis@2
$LN46@ProgramLis@2:

; 1198 : 
; 1199 :         case IDC_FORMAT:
; 1200 :             if(HIWORD(wParam) == CBN_SELCHANGE && MyInUpdate == FALSE)

  010be	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  010c1	c1 ea 10	 shr	 edx, 16			; 00000010H
  010c4	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  010ca	0f b7 c2	 movzx	 eax, dx
  010cd	83 f8 01	 cmp	 eax, 1
  010d0	0f 85 aa 00 00
	00		 jne	 $LN45@ProgramLis@2
  010d6	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate
  010dd	0f 85 9d 00 00
	00		 jne	 $LN45@ProgramLis@2

; 1201 :             {
; 1202 :                 Edit_GetText(GetDlgItem(hDlg, IDC_FREQUENCY), sbuf, 255);

  010e3	68 ff 00 00 00	 push	 255			; 000000ffH
  010e8	8d 8d e4 fb ff
	ff		 lea	 ecx, DWORD PTR _sbuf$[ebp]
  010ee	51		 push	 ecx
  010ef	68 5d 06 00 00	 push	 1629			; 0000065dH
  010f4	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  010f7	52		 push	 edx
  010f8	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  010fe	50		 push	 eax
  010ff	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 1203 :                 TCHAR* cLast;
; 1204 :                 double dFreq = _tcstod(sbuf, &cLast);

  01105	8d 85 6c fb ff
	ff		 lea	 eax, DWORD PTR _cLast$144574[ebp]
  0110b	50		 push	 eax
  0110c	8d 8d e4 fb ff
	ff		 lea	 ecx, DWORD PTR _sbuf$[ebp]
  01112	51		 push	 ecx
  01113	e8 00 00 00 00	 call	 _wcstod
  01118	83 c4 08	 add	 esp, 8
  0111b	dd 9d 64 fb ff
	ff		 fstp	 QWORD PTR _dFreq$144575[ebp]

; 1205 :                 long Freq = (long)(dFreq * 1000000.0);

  01121	dd 85 64 fb ff
	ff		 fld	 QWORD PTR _dFreq$144575[ebp]
  01127	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  0112d	e8 00 00 00 00	 call	 __ftol2_sse
  01132	89 85 70 fb ff
	ff		 mov	 DWORD PTR _Freq$144576[ebp], eax

; 1206 :                 Providers_GetCurrentSource()->SetTunerFrequency(Freq, SelectedVideoFormat(hDlg));

  01138	e8 00 00 00 00	 call	 ?Providers_GetCurrentSource@@YAPAVCSource@@XZ ; Providers_GetCurrentSource
  0113d	89 85 3c f9 ff
	ff		 mov	 DWORD PTR tv740[ebp], eax
  01143	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01146	52		 push	 edx
  01147	e8 00 00 00 00	 call	 ?SelectedVideoFormat@@YA?AW4eVideoFormat@@PAUHWND__@@@Z ; SelectedVideoFormat
  0114c	83 c4 04	 add	 esp, 4
  0114f	50		 push	 eax
  01150	8b 85 70 fb ff
	ff		 mov	 eax, DWORD PTR _Freq$144576[ebp]
  01156	50		 push	 eax
  01157	8b 8d 3c f9 ff
	ff		 mov	 ecx, DWORD PTR tv740[ebp]
  0115d	8b 11		 mov	 edx, DWORD PTR [ecx]
  0115f	8b 8d 3c f9 ff
	ff		 mov	 ecx, DWORD PTR tv740[ebp]
  01165	8b 82 90 00 00
	00		 mov	 eax, DWORD PTR [edx+144]
  0116b	ff d0		 call	 eax

; 1207 :                 ChangeChannelInfo(hDlg, CurrentProgram);

  0116d	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01173	51		 push	 ecx
  01174	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01177	52		 push	 edx
  01178	e8 00 00 00 00	 call	 ?ChangeChannelInfo@@YAXPAUHWND__@@H@Z ; ChangeChannelInfo
  0117d	83 c4 08	 add	 esp, 8
$LN45@ProgramLis@2:

; 1208 :             }
; 1209 :             break;

  01180	e9 ed 07 00 00	 jmp	 $LN72@ProgramLis@2
$LN44@ProgramLis@2:

; 1210 : 
; 1211 :         case IDC_ADD:
; 1212 :             if(HIWORD(wParam) == BN_CLICKED)

  01185	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  01188	c1 e8 10	 shr	 eax, 16			; 00000010H
  0118b	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  01190	0f b7 c8	 movzx	 ecx, ax
  01193	85 c9		 test	 ecx, ecx
  01195	0f 85 49 02 00
	00		 jne	 $LN43@ProgramLis@2

; 1213 :             {
; 1214 :                 MyInUpdate = TRUE;

  0119b	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 1 ; MyInUpdate

; 1215 :                 Edit_GetText(GetDlgItem(hDlg, IDC_FREQUENCY), sbuf, 254);

  011a5	68 fe 00 00 00	 push	 254			; 000000feH
  011aa	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  011b0	52		 push	 edx
  011b1	68 5d 06 00 00	 push	 1629			; 0000065dH
  011b6	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  011b9	50		 push	 eax
  011ba	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  011c0	50		 push	 eax
  011c1	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 1216 :                 sbuf[255] = '\0';

  011c7	33 c9		 xor	 ecx, ecx
  011c9	66 89 8d e2 fd
	ff ff		 mov	 WORD PTR _sbuf$[ebp+510], cx

; 1217 :                 double dFreq = _tcstod(sbuf, '\0');

  011d0	6a 00		 push	 0
  011d2	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  011d8	52		 push	 edx
  011d9	e8 00 00 00 00	 call	 _wcstod
  011de	83 c4 08	 add	 esp, 8
  011e1	dd 9d 44 fb ff
	ff		 fstp	 QWORD PTR _dFreq$144582[ebp]

; 1218 :                 long Freq = (long)(dFreq * 1000000.0);

  011e7	dd 85 44 fb ff
	ff		 fld	 QWORD PTR _dFreq$144582[ebp]
  011ed	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@412e848000000000
  011f3	e8 00 00 00 00	 call	 __ftol2_sse
  011f8	89 85 54 fb ff
	ff		 mov	 DWORD PTR _Freq$144583[ebp], eax

; 1219 : 
; 1220 :                 int Channel = GetCurrentChannelNumber(hDlg);

  011fe	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01201	50		 push	 eax
  01202	e8 00 00 00 00	 call	 ?GetCurrentChannelNumber@@YAHPAUHWND__@@@Z ; GetCurrentChannelNumber
  01207	83 c4 04	 add	 esp, 4
  0120a	89 85 5c fb ff
	ff		 mov	 DWORD PTR _Channel$144585[ebp], eax

; 1221 :                 int Format = ComboBox_GetCurSel(GetDlgItem(hDlg, IDC_FORMAT)) - 1;

  01210	6a 00		 push	 0
  01212	6a 00		 push	 0
  01214	68 47 01 00 00	 push	 327			; 00000147H
  01219	68 53 06 00 00	 push	 1619			; 00000653H
  0121e	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  01221	51		 push	 ecx
  01222	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01228	50		 push	 eax
  01229	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0122f	83 e8 01	 sub	 eax, 1
  01232	89 85 60 fb ff
	ff		 mov	 DWORD PTR _Format$144586[ebp], eax

; 1222 :                 Edit_GetText(GetDlgItem(hDlg, IDC_NAME), sbuf, 255);

  01238	68 ff 00 00 00	 push	 255			; 000000ffH
  0123d	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  01243	52		 push	 edx
  01244	68 9f 06 00 00	 push	 1695			; 0000069fH
  01249	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0124c	50		 push	 eax
  0124d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01253	50		 push	 eax
  01254	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 1223 :                 Edit_GetText(GetDlgItem(hDlg, IDC_EPGNAME), sbuf2, 255);

  0125a	68 ff 00 00 00	 push	 255			; 000000ffH
  0125f	8d 8d ec fd ff
	ff		 lea	 ecx, DWORD PTR _sbuf2$[ebp]
  01265	51		 push	 ecx
  01266	68 a0 06 00 00	 push	 1696			; 000006a0H
  0126b	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0126e	52		 push	 edx
  0126f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01275	50		 push	 eax
  01276	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetWindowTextW@12

; 1224 :                 BOOL Active = (Button_GetCheck(GetDlgItem(hDlg, IDC_ACTIVE)) == BST_CHECKED);

  0127c	6a 00		 push	 0
  0127e	6a 00		 push	 0
  01280	68 f0 00 00 00	 push	 240			; 000000f0H
  01285	68 78 05 00 00	 push	 1400			; 00000578H
  0128a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0128d	50		 push	 eax
  0128e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01294	50		 push	 eax
  01295	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0129b	83 e8 01	 sub	 eax, 1
  0129e	f7 d8		 neg	 eax
  012a0	1b c0		 sbb	 eax, eax
  012a2	83 c0 01	 add	 eax, 1
  012a5	89 85 58 fb ff
	ff		 mov	 DWORD PTR _Active$144589[ebp], eax

; 1225 :                 SmartPtr<CChannel> NewChannel(new CChannel(sbuf, sbuf2, Freq, Channel, (eVideoFormat)Format, Active));

  012ab	6a 48		 push	 72			; 00000048H
  012ad	e8 00 00 00 00	 call	 ??2@YAPAXI@Z		; operator new
  012b2	83 c4 04	 add	 esp, 4
  012b5	89 85 24 fa ff
	ff		 mov	 DWORD PTR $T360377[ebp], eax
  012bb	c7 45 fc 08 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 8
  012c2	83 bd 24 fa ff
	ff 00		 cmp	 DWORD PTR $T360377[ebp], 0
  012c9	74 3d		 je	 SHORT $LN120@ProgramLis@2
  012cb	8b 8d 58 fb ff
	ff		 mov	 ecx, DWORD PTR _Active$144589[ebp]
  012d1	51		 push	 ecx
  012d2	8b 95 60 fb ff
	ff		 mov	 edx, DWORD PTR _Format$144586[ebp]
  012d8	52		 push	 edx
  012d9	8b 85 5c fb ff
	ff		 mov	 eax, DWORD PTR _Channel$144585[ebp]
  012df	50		 push	 eax
  012e0	8b 8d 54 fb ff
	ff		 mov	 ecx, DWORD PTR _Freq$144583[ebp]
  012e6	51		 push	 ecx
  012e7	8d 95 ec fd ff
	ff		 lea	 edx, DWORD PTR _sbuf2$[ebp]
  012ed	52		 push	 edx
  012ee	8d 85 e4 fb ff
	ff		 lea	 eax, DWORD PTR _sbuf$[ebp]
  012f4	50		 push	 eax
  012f5	8b 8d 24 fa ff
	ff		 mov	 ecx, DWORD PTR $T360377[ebp]
  012fb	e8 00 00 00 00	 call	 ??0CChannel@@QAE@PB_W0KHW4eVideoFormat@@H@Z ; CChannel::CChannel
  01300	89 85 38 f9 ff
	ff		 mov	 DWORD PTR tv816[ebp], eax
  01306	eb 0a		 jmp	 SHORT $LN121@ProgramLis@2
$LN120@ProgramLis@2:
  01308	c7 85 38 f9 ff
	ff 00 00 00 00	 mov	 DWORD PTR tv816[ebp], 0
$LN121@ProgramLis@2:
  01312	8b 8d 38 f9 ff
	ff		 mov	 ecx, DWORD PTR tv816[ebp]
  01318	89 8d 28 fa ff
	ff		 mov	 DWORD PTR $T360376[ebp], ecx
  0131e	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  01325	6a 00		 push	 0
  01327	8b 95 28 fa ff
	ff		 mov	 edx, DWORD PTR $T360376[ebp]
  0132d	52		 push	 edx
  0132e	8d 8d 4c fb ff
	ff		 lea	 ecx, DWORD PTR _NewChannel$144598[ebp]
  01334	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCChannel@@@@QAE@PAVCChannel@@PAUCounter@@@Z ; SmartPtr<CChannel>::SmartPtr<CChannel>
  01339	c7 45 fc 09 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 9

; 1226 :                 MyChannels.AddChannel(NewChannel);

  01340	83 ec 08	 sub	 esp, 8
  01343	8b cc		 mov	 ecx, esp
  01345	89 a5 20 fa ff
	ff		 mov	 DWORD PTR $T360380[ebp], esp
  0134b	8d 85 4c fb ff
	ff		 lea	 eax, DWORD PTR _NewChannel$144598[ebp]
  01351	50		 push	 eax
  01352	e8 00 00 00 00	 call	 ??0?$SmartPtr@VCChannel@@@@QAE@ABV0@@Z ; SmartPtr<CChannel>::SmartPtr<CChannel>
  01357	89 85 34 f9 ff
	ff		 mov	 DWORD PTR tv801[ebp], eax
  0135d	8b 8d 34 f9 ff
	ff		 mov	 ecx, DWORD PTR tv801[ebp]
  01363	89 8d 30 f9 ff
	ff		 mov	 DWORD PTR tv1265[ebp], ecx
  01369	c6 45 fc 0a	 mov	 BYTE PTR __$EHRec$[ebp+8], 10 ; 0000000aH
  0136d	c6 45 fc 09	 mov	 BYTE PTR __$EHRec$[ebp+8], 9
  01371	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  01376	e8 00 00 00 00	 call	 ?AddChannel@CChannelList@@QAEXV?$SmartPtr@VCChannel@@@@@Z ; CChannelList::AddChannel

; 1227 :                 CurrentProgram = ListBox_AddString(GetDlgItem(hDlg, IDC_PROGRAMLIST), sbuf);

  0137b	8d 95 e4 fb ff
	ff		 lea	 edx, DWORD PTR _sbuf$[ebp]
  01381	52		 push	 edx
  01382	6a 00		 push	 0
  01384	68 80 01 00 00	 push	 384			; 00000180H
  01389	68 c4 06 00 00	 push	 1732			; 000006c4H
  0138e	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01391	50		 push	 eax
  01392	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01398	50		 push	 eax
  01399	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0139f	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 1228 :                 ListBox_SetCurSel(GetDlgItem(hDlg, IDC_PROGRAMLIST), CurrentProgram);

  013a4	6a 00		 push	 0
  013a6	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  013ac	51		 push	 ecx
  013ad	68 86 01 00 00	 push	 390			; 00000186H
  013b2	68 c4 06 00 00	 push	 1732			; 000006c4H
  013b7	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  013ba	52		 push	 edx
  013bb	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  013c1	50		 push	 eax
  013c2	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 1229 :                 MyInUpdate = FALSE;

  013c8	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?MyInUpdate@@3HA, 0 ; MyInUpdate

; 1230 :             }

  013d2	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  013d9	8d 8d 4c fb ff
	ff		 lea	 ecx, DWORD PTR _NewChannel$144598[ebp]
  013df	e8 00 00 00 00	 call	 ??1?$SmartPtr@VCChannel@@@@QAE@XZ ; SmartPtr<CChannel>::~SmartPtr<CChannel>
$LN43@ProgramLis@2:

; 1231 :             break;

  013e4	e9 89 05 00 00	 jmp	 $LN72@ProgramLis@2
$LN42@ProgramLis@2:

; 1232 :         case IDC_REMOVE:
; 1233 :             if(HIWORD(wParam) == BN_CLICKED && CurrentProgram >= 0 && CurrentProgram < MyChannels.GetSize())

  013e9	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  013ec	c1 e8 10	 shr	 eax, 16			; 00000010H
  013ef	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  013f4	0f b7 c8	 movzx	 ecx, ax
  013f7	85 c9		 test	 ecx, ecx
  013f9	0f 85 e0 00 00
	00		 jne	 $LN41@ProgramLis@2
  013ff	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, 0 ; CurrentProgram
  01406	0f 8c d3 00 00
	00		 jl	 $LN41@ProgramLis@2
  0140c	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  01411	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  01416	39 05 00 00 00
	00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram
  0141c	0f 8d bd 00 00
	00		 jge	 $LN41@ProgramLis@2

; 1234 :             {
; 1235 :                 int TopIndex = 0;

  01422	c7 85 40 fb ff
	ff 00 00 00 00	 mov	 DWORD PTR _TopIndex$144612[ebp], 0

; 1236 :                 MyChannels.RemoveChannel(CurrentProgram);

  0142c	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01432	52		 push	 edx
  01433	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  01438	e8 00 00 00 00	 call	 ?RemoveChannel@CChannelList@@QAEXH@Z ; CChannelList::RemoveChannel

; 1237 :                 if(CurrentProgram >= MyChannels.GetSize())

  0143d	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  01442	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  01447	39 05 00 00 00
	00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram
  0144d	7c 12		 jl	 SHORT $LN40@ProgramLis@2

; 1238 :                 {
; 1239 :                     CurrentProgram = MyChannels.GetSize() - 1;

  0144f	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  01454	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  01459	83 e8 01	 sub	 eax, 1
  0145c	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram
$LN40@ProgramLis@2:

; 1240 :                 }
; 1241 :                 Channel_Change(CurrentProgram);

  01461	6a 00		 push	 0
  01463	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01468	50		 push	 eax
  01469	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  0146e	83 c4 08	 add	 esp, 8

; 1242 :                 TopIndex = ListBox_GetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  01471	6a 00		 push	 0
  01473	6a 00		 push	 0
  01475	68 8e 01 00 00	 push	 398			; 0000018eH
  0147a	68 c4 06 00 00	 push	 1732			; 000006c4H
  0147f	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  01482	51		 push	 ecx
  01483	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01489	50		 push	 eax
  0148a	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  01490	89 85 40 fb ff
	ff		 mov	 DWORD PTR _TopIndex$144612[ebp], eax

; 1243 :                 RefreshProgramList(hDlg, CurrentProgram);

  01496	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0149c	52		 push	 edx
  0149d	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  014a0	50		 push	 eax
  014a1	e8 00 00 00 00	 call	 ?RefreshProgramList@@YAXPAUHWND__@@H@Z ; RefreshProgramList
  014a6	83 c4 08	 add	 esp, 8

; 1244 :                 ListBox_SetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST), TopIndex);

  014a9	6a 00		 push	 0
  014ab	8b 8d 40 fb ff
	ff		 mov	 ecx, DWORD PTR _TopIndex$144612[ebp]
  014b1	51		 push	 ecx
  014b2	68 97 01 00 00	 push	 407			; 00000197H
  014b7	68 c4 06 00 00	 push	 1732			; 000006c4H
  014bc	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  014bf	52		 push	 edx
  014c0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  014c6	50		 push	 eax
  014c7	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16

; 1245 :                 UpdateDetails(hDlg, CurrentProgram);

  014cd	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  014d2	50		 push	 eax
  014d3	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  014d6	51		 push	 ecx
  014d7	e8 00 00 00 00	 call	 ?UpdateDetails@@YAXPAUHWND__@@H@Z ; UpdateDetails
  014dc	83 c4 08	 add	 esp, 8
$LN41@ProgramLis@2:

; 1246 :             }
; 1247 :             break;

  014df	e9 8e 04 00 00	 jmp	 $LN72@ProgramLis@2
$LN39@ProgramLis@2:

; 1248 :         case IDC_UP:
; 1249 :             if(HIWORD(wParam) == BN_CLICKED && CurrentProgram > 0 && CurrentProgram < MyChannels.GetSize())

  014e4	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  014e7	c1 ea 10	 shr	 edx, 16			; 00000010H
  014ea	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  014f0	0f b7 c2	 movzx	 eax, dx
  014f3	85 c0		 test	 eax, eax
  014f5	0f 85 b1 00 00
	00		 jne	 $LN38@ProgramLis@2
  014fb	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, 0 ; CurrentProgram
  01502	0f 8e a4 00 00
	00		 jle	 $LN38@ProgramLis@2
  01508	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0150d	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  01512	39 05 00 00 00
	00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram
  01518	0f 8d 8e 00 00
	00		 jge	 $LN38@ProgramLis@2

; 1250 :             {
; 1251 :                 int TopIndex = 0;

  0151e	c7 85 3c fb ff
	ff 00 00 00 00	 mov	 DWORD PTR _TopIndex$144624[ebp], 0

; 1252 :                 MyChannels.SwapChannels(CurrentProgram, CurrentProgram - 1);

  01528	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0152e	83 e9 01	 sub	 ecx, 1
  01531	51		 push	 ecx
  01532	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01538	52		 push	 edx
  01539	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0153e	e8 00 00 00 00	 call	 ?SwapChannels@CChannelList@@QAEXHH@Z ; CChannelList::SwapChannels

; 1253 :                 --CurrentProgram;

  01543	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01548	83 e8 01	 sub	 eax, 1
  0154b	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 1254 :                 TopIndex = ListBox_GetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  01550	6a 00		 push	 0
  01552	6a 00		 push	 0
  01554	68 8e 01 00 00	 push	 398			; 0000018eH
  01559	68 c4 06 00 00	 push	 1732			; 000006c4H
  0155e	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  01561	51		 push	 ecx
  01562	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01568	50		 push	 eax
  01569	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0156f	89 85 3c fb ff
	ff		 mov	 DWORD PTR _TopIndex$144624[ebp], eax

; 1255 :                 RefreshProgramList(hDlg, CurrentProgram);

  01575	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0157b	52		 push	 edx
  0157c	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0157f	50		 push	 eax
  01580	e8 00 00 00 00	 call	 ?RefreshProgramList@@YAXPAUHWND__@@H@Z ; RefreshProgramList
  01585	83 c4 08	 add	 esp, 8

; 1256 :                 ListBox_SetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST), TopIndex);

  01588	6a 00		 push	 0
  0158a	8b 8d 3c fb ff
	ff		 mov	 ecx, DWORD PTR _TopIndex$144624[ebp]
  01590	51		 push	 ecx
  01591	68 97 01 00 00	 push	 407			; 00000197H
  01596	68 c4 06 00 00	 push	 1732			; 000006c4H
  0159b	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  0159e	52		 push	 edx
  0159f	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  015a5	50		 push	 eax
  015a6	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN38@ProgramLis@2:

; 1257 :             }
; 1258 :             break;

  015ac	e9 c1 03 00 00	 jmp	 $LN72@ProgramLis@2
$LN37@ProgramLis@2:

; 1259 :         case IDC_DOWN:
; 1260 :             if(HIWORD(wParam) == BN_CLICKED && CurrentProgram >= 0 && CurrentProgram < MyChannels.GetSize() - 1)

  015b1	8b 45 10	 mov	 eax, DWORD PTR _wParam$[ebp]
  015b4	c1 e8 10	 shr	 eax, 16			; 00000010H
  015b7	25 ff ff 00 00	 and	 eax, 65535		; 0000ffffH
  015bc	0f b7 c8	 movzx	 ecx, ax
  015bf	85 c9		 test	 ecx, ecx
  015c1	0f 85 b4 00 00
	00		 jne	 $LN36@ProgramLis@2
  015c7	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, 0 ; CurrentProgram
  015ce	0f 8c a7 00 00
	00		 jl	 $LN36@ProgramLis@2
  015d4	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  015d9	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  015de	83 e8 01	 sub	 eax, 1
  015e1	39 05 00 00 00
	00		 cmp	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram
  015e7	0f 8d 8e 00 00
	00		 jge	 $LN36@ProgramLis@2

; 1261 :             {
; 1262 :                 int TopIndex = 0;

  015ed	c7 85 38 fb ff
	ff 00 00 00 00	 mov	 DWORD PTR _TopIndex$144635[ebp], 0

; 1263 :                 MyChannels.SwapChannels(CurrentProgram, CurrentProgram + 1);

  015f7	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  015fd	83 c2 01	 add	 edx, 1
  01600	52		 push	 edx
  01601	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01606	50		 push	 eax
  01607	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  0160c	e8 00 00 00 00	 call	 ?SwapChannels@CChannelList@@QAEXHH@Z ; CChannelList::SwapChannels

; 1264 :                 ++CurrentProgram;

  01611	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01617	83 c1 01	 add	 ecx, 1
  0161a	89 0d 00 00 00
	00		 mov	 DWORD PTR ?CurrentProgram@@3JA, ecx ; CurrentProgram

; 1265 :                 TopIndex = ListBox_GetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  01620	6a 00		 push	 0
  01622	6a 00		 push	 0
  01624	68 8e 01 00 00	 push	 398			; 0000018eH
  01629	68 c4 06 00 00	 push	 1732			; 000006c4H
  0162e	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01631	52		 push	 edx
  01632	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01638	50		 push	 eax
  01639	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0163f	89 85 38 fb ff
	ff		 mov	 DWORD PTR _TopIndex$144635[ebp], eax

; 1266 :                 RefreshProgramList(hDlg, CurrentProgram);

  01645	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  0164a	50		 push	 eax
  0164b	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  0164e	51		 push	 ecx
  0164f	e8 00 00 00 00	 call	 ?RefreshProgramList@@YAXPAUHWND__@@H@Z ; RefreshProgramList
  01654	83 c4 08	 add	 esp, 8

; 1267 :                 ListBox_SetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST), TopIndex);

  01657	6a 00		 push	 0
  01659	8b 95 38 fb ff
	ff		 mov	 edx, DWORD PTR _TopIndex$144635[ebp]
  0165f	52		 push	 edx
  01660	68 97 01 00 00	 push	 407			; 00000197H
  01665	68 c4 06 00 00	 push	 1732			; 000006c4H
  0166a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0166d	50		 push	 eax
  0166e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01674	50		 push	 eax
  01675	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN36@ProgramLis@2:

; 1268 :             }
; 1269 :             break;

  0167b	e9 f2 02 00 00	 jmp	 $LN72@ProgramLis@2
$LN35@ProgramLis@2:

; 1270 : 
; 1271 :         case IDC_CLEAR:
; 1272 :             if(HIWORD(wParam) == BN_CLICKED)

  01680	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  01683	c1 e9 10	 shr	 ecx, 16			; 00000010H
  01686	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  0168c	0f b7 d1	 movzx	 edx, cx
  0168f	85 d2		 test	 edx, edx
  01691	75 0c		 jne	 SHORT $LN34@ProgramLis@2

; 1273 :             {
; 1274 :                 //The enabled state of this button tells us if we can clear or not
; 1275 :                 //no need to check any state
; 1276 :                 ClearProgramList(hDlg);

  01693	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01696	50		 push	 eax
  01697	e8 00 00 00 00	 call	 ?ClearProgramList@@YAXPAUHWND__@@@Z ; ClearProgramList
  0169c	83 c4 04	 add	 esp, 4
$LN34@ProgramLis@2:

; 1277 :             }
; 1278 :             break;

  0169f	e9 ce 02 00 00	 jmp	 $LN72@ProgramLis@2
$LN33@ProgramLis@2:

; 1279 : 
; 1280 :         case IDC_SCAN :
; 1281 :             if(HIWORD(wParam) == BN_CLICKED)

  016a4	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  016a7	c1 e9 10	 shr	 ecx, 16			; 00000010H
  016aa	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  016b0	0f b7 d1	 movzx	 edx, cx
  016b3	85 d2		 test	 edx, edx
  016b5	75 6d		 jne	 SHORT $LN30@ProgramLis@2

; 1282 :             {
; 1283 :                 if(MyInScan == TRUE)

  016b7	83 3d 00 00 00
	00 01		 cmp	 DWORD PTR ?MyInScan@@3HA, 1 ; MyInScan
  016be	75 0e		 jne	 SHORT $LN31@ProgramLis@2

; 1284 :                 {
; 1285 :                     EndScan(hDlg);

  016c0	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  016c3	50		 push	 eax
  016c4	e8 00 00 00 00	 call	 ?EndScan@@YAXPAUHWND__@@@Z ; EndScan
  016c9	83 c4 04	 add	 esp, 4

; 1286 :                 }
; 1287 :                 else

  016cc	eb 56		 jmp	 SHORT $LN30@ProgramLis@2
$LN31@ProgramLis@2:

; 1288 :                 {
; 1289 :                     // It doesn't really make sense to do a US style scan
; 1290 :                     // unless the list is empty so tell the user
; 1291 :                     if(MyChannels.GetSize() > 0 && MyScanMode == SCAN_MODE_CUSTOM_ORDER)

  016ce	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  016d3	e8 00 00 00 00	 call	 ?GetSize@CChannelList@@QBEHXZ ; CChannelList::GetSize
  016d8	85 c0		 test	 eax, eax
  016da	7e 3c		 jle	 SHORT $LN27@ProgramLis@2
  016dc	83 3d 00 00 00
	00 01		 cmp	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, 1 ; MyScanMode
  016e3	75 33		 jne	 SHORT $LN27@ProgramLis@2

; 1292 :                     {
; 1293 :                         if (MessageBox(
; 1294 :                                     hDlg,
; 1295 :                                     _T("You have requested a channel position scan and you already have channels.\n")
; 1296 :                                     _T("Proceeding will delete all your existing setup.\n")
; 1297 :                                     _T("Do you want to proceed and delete the existing list?"),
; 1298 :                                     _T("Clear All"),
; 1299 :                                     MB_YESNO | MB_ICONQUESTION | MB_APPLMODAL)
; 1300 :                                 == IDYES)

  016e5	6a 24		 push	 36			; 00000024H
  016e7	68 00 00 00 00	 push	 OFFSET ??_C@_1BE@KPFOFPGI@?$AAC?$AAl?$AAe?$AAa?$AAr?$AA?5?$AAA?$AAl?$AAl?$AA?$AA@
  016ec	68 00 00 00 00	 push	 OFFSET ??_C@_1BFO@IOBOMCG@?$AAY?$AAo?$AAu?$AA?5?$AAh?$AAa?$AAv?$AAe?$AA?5?$AAr?$AAe?$AAq?$AAu?$AAe?$AAs?$AAt?$AAe?$AAd?$AA?5?$AAa?$AA?5?$AAc?$AAh?$AAa?$AAn?$AAn?$AAe?$AAl?$AA?5?$AAp?$AAo?$AAs@
  016f1	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  016f4	51		 push	 ecx
  016f5	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__MessageBoxW@16
  016fb	83 f8 06	 cmp	 eax, 6
  016fe	75 0e		 jne	 SHORT $LN28@ProgramLis@2

; 1301 :                         {
; 1302 :                             ClearProgramList(hDlg);

  01700	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01703	52		 push	 edx
  01704	e8 00 00 00 00	 call	 ?ClearProgramList@@YAXPAUHWND__@@@Z ; ClearProgramList
  01709	83 c4 04	 add	 esp, 4

; 1303 :                         }
; 1304 :                         else

  0170c	eb 0a		 jmp	 SHORT $LN27@ProgramLis@2
$LN28@ProgramLis@2:

; 1305 :                         {
; 1306 :                             return TRUE;

  0170e	b8 01 00 00 00	 mov	 eax, 1
  01713	e9 f0 04 00 00	 jmp	 $LN116@ProgramLis@2
$LN27@ProgramLis@2:

; 1307 :                         }
; 1308 :                     }
; 1309 :                     BeginScan(hDlg);

  01718	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0171b	50		 push	 eax
  0171c	e8 00 00 00 00	 call	 ?BeginScan@@YAXPAUHWND__@@@Z ; BeginScan
  01721	83 c4 04	 add	 esp, 4
$LN30@ProgramLis@2:

; 1310 :                 }
; 1311 :             }
; 1312 :             break;

  01724	e9 49 02 00 00	 jmp	 $LN72@ProgramLis@2
$LN26@ProgramLis@2:

; 1313 : 
; 1314 :         case IDC_SCAN_AFC :
; 1315 :             if(HIWORD(wParam) == BN_CLICKED)

  01729	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  0172c	c1 e9 10	 shr	 ecx, 16			; 00000010H
  0172f	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  01735	0f b7 d1	 movzx	 edx, cx
  01738	85 d2		 test	 edx, edx
  0173a	75 2e		 jne	 SHORT $LN25@ProgramLis@2

; 1316 :             {
; 1317 :                 MyIsUsingAFC = (Button_GetCheck(GetDlgItem(hDlg, IDC_SCAN_AFC)) == BST_CHECKED);

  0173c	6a 00		 push	 0
  0173e	6a 00		 push	 0
  01740	68 f0 00 00 00	 push	 240			; 000000f0H
  01745	68 9a 05 00 00	 push	 1434			; 0000059aH
  0174a	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  0174d	50		 push	 eax
  0174e	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01754	50		 push	 eax
  01755	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  0175b	83 e8 01	 sub	 eax, 1
  0175e	f7 d8		 neg	 eax
  01760	1b c0		 sbb	 eax, eax
  01762	83 c0 01	 add	 eax, 1
  01765	a3 00 00 00 00	 mov	 DWORD PTR ?MyIsUsingAFC@@3HA, eax ; MyIsUsingAFC
$LN25@ProgramLis@2:

; 1318 :             }
; 1319 :             break;

  0176a	e9 03 02 00 00	 jmp	 $LN72@ProgramLis@2
$LN24@ProgramLis@2:

; 1320 : 
; 1321 :         case IDC_CHANNEL_MUTE :
; 1322 :             if(HIWORD(wParam) == BN_CLICKED)

  0176f	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  01772	c1 e9 10	 shr	 ecx, 16			; 00000010H
  01775	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  0177b	0f b7 d1	 movzx	 edx, cx
  0177e	85 d2		 test	 edx, edx
  01780	75 3e		 jne	 SHORT $LN23@ProgramLis@2

; 1323 :             {
; 1324 :                 BOOL muteAudio = (Button_GetCheck(GetDlgItem(hDlg, IDC_CHANNEL_MUTE)) == BST_CHECKED);

  01782	6a 00		 push	 0
  01784	6a 00		 push	 0
  01786	68 f0 00 00 00	 push	 240			; 000000f0H
  0178b	68 99 05 00 00	 push	 1433			; 00000599H
  01790	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01793	50		 push	 eax
  01794	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  0179a	50		 push	 eax
  0179b	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  017a1	83 e8 01	 sub	 eax, 1
  017a4	f7 d8		 neg	 eax
  017a6	1b c0		 sbb	 eax, eax
  017a8	83 c0 01	 add	 eax, 1
  017ab	89 85 34 fb ff
	ff		 mov	 DWORD PTR _muteAudio$144667[ebp], eax

; 1325 :                 Audio_SetUserMute(muteAudio);

  017b1	8b 8d 34 fb ff
	ff		 mov	 ecx, DWORD PTR _muteAudio$144667[ebp]
  017b7	51		 push	 ecx
  017b8	e8 00 00 00 00	 call	 ?Audio_SetUserMute@@YAXH@Z ; Audio_SetUserMute
  017bd	83 c4 04	 add	 esp, 4
$LN23@ProgramLis@2:

; 1326 :             }
; 1327 :             break;

  017c0	e9 ad 01 00 00	 jmp	 $LN72@ProgramLis@2
$LN22@ProgramLis@2:

; 1328 : 
; 1329 :         case IDOK:
; 1330 :             if(HIWORD(wParam) == BN_CLICKED)

  017c5	8b 55 10	 mov	 edx, DWORD PTR _wParam$[ebp]
  017c8	c1 ea 10	 shr	 edx, 16			; 00000010H
  017cb	81 e2 ff ff 00
	00		 and	 edx, 65535		; 0000ffffH
  017d1	0f b7 c2	 movzx	 eax, dx
  017d4	85 c0		 test	 eax, eax
  017d6	0f 85 ea 00 00
	00		 jne	 $LN21@ProgramLis@2

; 1331 :             {
; 1332 :                 TidyUp(hDlg);

  017dc	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  017df	51		 push	 ecx
  017e0	e8 00 00 00 00	 call	 ?TidyUp@@YAXPAUHWND__@@@Z ; TidyUp
  017e5	83 c4 04	 add	 esp, 4

; 1333 :                 // try to write out programs
; 1334 :                 if (!MyChannels.WriteFile())

  017e8	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  017ed	e8 00 00 00 00	 call	 ?WriteFile@CUserChannels@@QBEHXZ ; CUserChannels::WriteFile
  017f2	85 c0		 test	 eax, eax
  017f4	0f 85 a3 00 00
	00		 jne	 $LN20@ProgramLis@2

; 1335 :                 {
; 1336 :                     tstring dummy(MakeString() << _T("Unable to write to program file"));

  017fa	8d 8d a0 f9 ff
	ff		 lea	 ecx, DWORD PTR $T360381[ebp]
  01800	e8 00 00 00 00	 call	 ??0MakeString@@QAE@XZ
  01805	89 85 2c f9 ff
	ff		 mov	 DWORD PTR tv1272[ebp], eax
  0180b	8b 95 2c f9 ff
	ff		 mov	 edx, DWORD PTR tv1272[ebp]
  01811	89 95 28 f9 ff
	ff		 mov	 DWORD PTR tv1267[ebp], edx
  01817	c7 45 fc 0b 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 11 ; 0000000bH
  0181e	8d 85 84 f9 ff
	ff		 lea	 eax, DWORD PTR $T360382[ebp]
  01824	50		 push	 eax
  01825	68 00 00 00 00	 push	 OFFSET ??_C@_1EA@GGJLBDJE@?$AAU?$AAn?$AAa?$AAb?$AAl?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAw?$AAr?$AAi?$AAt?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAp?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAf?$AAi?$AAl?$AAe?$AA?$AA@
  0182a	8b 8d 28 f9 ff
	ff		 mov	 ecx, DWORD PTR tv1267[ebp]
  01830	e8 00 00 00 00	 call	 ??$?6$$BY0CA@$$CB_W@MakeString@@QAEAAV0@AAY0CA@$$CB_W@Z ; MakeString::operator<<<wchar_t const [32]>
  01835	8b c8		 mov	 ecx, eax
  01837	e8 00 00 00 00	 call	 ??BMakeString@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ ; MakeString::operator std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  0183c	c6 45 fc 0c	 mov	 BYTE PTR __$EHRec$[ebp+8], 12 ; 0000000cH
  01840	8d 8d 84 f9 ff
	ff		 lea	 ecx, DWORD PTR $T360382[ebp]
  01846	51		 push	 ecx
  01847	8d 8d 18 fb ff
	ff		 lea	 ecx, DWORD PTR _dummy$144679[ebp]
  0184d	e8 00 00 00 00	 call	 ??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@ABV01@@Z ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
  01852	c6 45 fc 0e	 mov	 BYTE PTR __$EHRec$[ebp+8], 14 ; 0000000eH
  01856	8d 8d 84 f9 ff
	ff		 lea	 ecx, DWORD PTR $T360382[ebp]
  0185c	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> >
  01861	c6 45 fc 0f	 mov	 BYTE PTR __$EHRec$[ebp+8], 15 ; 0000000fH
  01865	8d 8d a0 f9 ff
	ff		 lea	 ecx, DWORD PTR $T360381[ebp]
  0186b	e8 00 00 00 00	 call	 ??1MakeString@@QAE@XZ

; 1337 :                     ErrorBox(dummy);

  01870	8d 95 18 fb ff
	ff		 lea	 edx, DWORD PTR _dummy$144679[ebp]
  01876	52		 push	 edx
  01877	68 39 05 00 00	 push	 1337			; 00000539H
  0187c	68 00 00 00 00	 push	 OFFSET ??_C@_1CE@JNGLIEDD@?$AA?4?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAc?$AAp?$AAp?$AA?$AA@
  01881	6a 00		 push	 0
  01883	e8 00 00 00 00	 call	 ?_ErrorBox@@YAXPAUHWND__@@PB_WHABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z ; _ErrorBox
  01888	83 c4 10	 add	 esp, 16			; 00000010H

; 1338 :                 }

  0188b	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  01892	8d 8d 18 fb ff
	ff		 lea	 ecx, DWORD PTR _dummy$144679[ebp]
  01898	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> >
$LN20@ProgramLis@2:

; 1339 :                 SettingsMaster->SaveAllSettings(TRUE);

  0189d	6a 01		 push	 1
  0189f	b9 00 00 00 00	 mov	 ecx, OFFSET ?SettingsMaster@@3V?$SmartPtr@VCSettingsMaster@@@@A ; SettingsMaster
  018a4	e8 00 00 00 00	 call	 ??C?$SmartPtr@VCSettingsMaster@@@@QBEPAVCSettingsMaster@@XZ ; SmartPtr<CSettingsMaster>::operator->
  018a9	8b c8		 mov	 ecx, eax
  018ab	e8 00 00 00 00	 call	 ?SaveAllSettings@CSettingsMaster@@QAEXH@Z ; CSettingsMaster::SaveAllSettings

; 1340 :                 MyEPG.ReloadEPGData();    // Reload EPG data

  018b0	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyEPG@@3VCEPG@@A ; MyEPG
  018b5	e8 00 00 00 00	 call	 ?ReloadEPGData@CEPG@@QAEXXZ ; CEPG::ReloadEPGData

; 1341 :                 EndDialog(hDlg, TRUE);

  018ba	6a 01		 push	 1
  018bc	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  018bf	50		 push	 eax
  018c0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EndDialog@8
$LN21@ProgramLis@2:

; 1342 :             }
; 1343 :             break;

  018c6	e9 a7 00 00 00	 jmp	 $LN72@ProgramLis@2
$LN19@ProgramLis@2:

; 1344 : 
; 1345 :         case IDCANCEL:
; 1346 :             if(HIWORD(wParam) == BN_CLICKED)

  018cb	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  018ce	c1 e9 10	 shr	 ecx, 16			; 00000010H
  018d1	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  018d7	0f b7 d1	 movzx	 edx, cx
  018da	85 d2		 test	 edx, edx
  018dc	75 6b		 jne	 SHORT $LN18@ProgramLis@2

; 1347 :             {
; 1348 :                 TidyUp(hDlg);

  018de	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  018e1	50		 push	 eax
  018e2	e8 00 00 00 00	 call	 ?TidyUp@@YAXPAUHWND__@@@Z ; TidyUp
  018e7	83 c4 04	 add	 esp, 4

; 1349 :                 // revert to previously saved channel list
; 1350 :                 MyChannels.Clear();

  018ea	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  018ef	e8 00 00 00 00	 call	 ?Clear@CChannelList@@QAEXXZ ; CChannelList::Clear

; 1351 :                 MyChannels.ReadFile();

  018f4	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  018f9	e8 00 00 00 00	 call	 ?ReadFile@CUserChannels@@QAEHXZ ; CUserChannels::ReadFile

; 1352 :                 // revert to previous settings
; 1353 :                 MyScanMode = OldScanMode;

  018fe	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?OldScanMode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4W4eScanMode@@A
  01904	89 0d 00 00 00
	00		 mov	 DWORD PTR ?MyScanMode@@3W4eScanMode@@A, ecx ; MyScanMode

; 1354 :                 CountryCode = OldCountryCode;

  0190a	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?OldCountryCode@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA
  01910	89 15 00 00 00
	00		 mov	 DWORD PTR ?CountryCode@@3HA, edx ; CountryCode

; 1355 :                 CurrentProgram = OldCurrentProgram;

  01916	a1 00 00 00 00	 mov	 eax, DWORD PTR ?OldCurrentProgram@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA
  0191b	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 1356 :                 MyIsUsingAFC = OldIsUsingAFC;

  01920	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?OldIsUsingAFC@?1??ProgramListProc@@YGHPAUHWND__@@IIJ@Z@4HA
  01926	89 0d 00 00 00
	00		 mov	 DWORD PTR ?MyIsUsingAFC@@3HA, ecx ; MyIsUsingAFC

; 1357 :                 // Tune in to whatever we were showing before
; 1358 :                 // we went into dialog
; 1359 :                 Channel_Change(CurrentProgram);

  0192c	6a 00		 push	 0
  0192e	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01934	52		 push	 edx
  01935	e8 00 00 00 00	 call	 ?Channel_Change@@YAXHH@Z ; Channel_Change
  0193a	83 c4 08	 add	 esp, 8

; 1360 :                 EndDialog(hDlg, FALSE);

  0193d	6a 00		 push	 0
  0193f	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01942	50		 push	 eax
  01943	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__EndDialog@8
$LN18@ProgramLis@2:

; 1361 :             }
; 1362 :             break;

  01949	eb 27		 jmp	 SHORT $LN72@ProgramLis@2
$LN17@ProgramLis@2:

; 1363 : 
; 1364 :         case IDC_HELPBTN:
; 1365 :             if(HIWORD(wParam) == BN_CLICKED)

  0194b	8b 4d 10	 mov	 ecx, DWORD PTR _wParam$[ebp]
  0194e	c1 e9 10	 shr	 ecx, 16			; 00000010H
  01951	81 e1 ff ff 00
	00		 and	 ecx, 65535		; 0000ffffH
  01957	0f b7 d1	 movzx	 edx, cx
  0195a	85 d2		 test	 edx, edx
  0195c	75 14		 jne	 SHORT $LN16@ProgramLis@2

; 1366 :             {
; 1367 :                 HtmlHelp(GetMainWnd(), _T("DScaler.chm::/ProgramList.htm"), HH_DISPLAY_TOPIC, 0);

  0195e	6a 00		 push	 0
  01960	6a 00		 push	 0
  01962	68 00 00 00 00	 push	 OFFSET ??_C@_1DM@KPKHLGLK@?$AAD?$AAS?$AAc?$AAa?$AAl?$AAe?$AAr?$AA?4?$AAc?$AAh?$AAm?$AA?3?$AA?3?$AA?1?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AAL?$AAi?$AAs?$AAt?$AA?4?$AAh?$AAt?$AAm?$AA?$AA@
  01967	e8 00 00 00 00	 call	 ?GetMainWnd@@YAPAUHWND__@@XZ ; GetMainWnd
  0196c	50		 push	 eax
  0196d	e8 00 00 00 00	 call	 _HtmlHelpW@16
$LN16@ProgramLis@2:
$LN15@ProgramLis@2:
$LN72@ProgramLis@2:
$LN114@ProgramLis@2:

; 1368 :             }
; 1369 :             break;
; 1370 : 
; 1371 :         default:
; 1372 :             break;
; 1373 : 
; 1374 :         }
; 1375 : 
; 1376 :         break;
; 1377 :     }
; 1378 : 
; 1379 :     if(message == WM_DRAGLISTMESSAGE)

  01972	8b 45 0c	 mov	 eax, DWORD PTR _message$[ebp]
  01975	3b 05 00 00 00
	00		 cmp	 eax, DWORD PTR ?WM_DRAGLISTMESSAGE@@3HA ; WM_DRAGLISTMESSAGE
  0197b	0f 85 85 02 00
	00		 jne	 $LN14@ProgramLis@2

; 1380 :     {
; 1381 :         int Item = 0;

  01981	c7 85 10 fb ff
	ff 00 00 00 00	 mov	 DWORD PTR _Item$144694[ebp], 0

; 1382 :         LPDRAGLISTINFO pDragInfo = (LPDRAGLISTINFO) lParam;

  0198b	8b 4d 14	 mov	 ecx, DWORD PTR _lParam$[ebp]
  0198e	89 8d 14 fb ff
	ff		 mov	 DWORD PTR _pDragInfo$144695[ebp], ecx

; 1383 :         switch(pDragInfo->uNotification)

  01994	8b 95 14 fb ff
	ff		 mov	 edx, DWORD PTR _pDragInfo$144695[ebp]
  0199a	8b 02		 mov	 eax, DWORD PTR [edx]
  0199c	89 85 24 f9 ff
	ff		 mov	 DWORD PTR tv1131[ebp], eax
  019a2	8b 8d 24 f9 ff
	ff		 mov	 ecx, DWORD PTR tv1131[ebp]
  019a8	81 e9 85 04 00
	00		 sub	 ecx, 1157		; 00000485H
  019ae	89 8d 24 f9 ff
	ff		 mov	 DWORD PTR tv1131[ebp], ecx
  019b4	83 bd 24 f9 ff
	ff 03		 cmp	 DWORD PTR tv1131[ebp], 3
  019bb	0f 87 3e 02 00
	00		 ja	 $LN12@ProgramLis@2
  019c1	8b 95 24 f9 ff
	ff		 mov	 edx, DWORD PTR tv1131[ebp]
  019c7	ff 24 95 00 00
	00 00		 jmp	 DWORD PTR $LN143@ProgramLis@2[edx*4]
$LN11@ProgramLis@2:

; 1384 :         {
; 1385 :         case DL_BEGINDRAG:
; 1386 :             DragItemIndex = ListBox_GetCurSel(pDragInfo->hWnd);

  019ce	6a 00		 push	 0
  019d0	6a 00		 push	 0
  019d2	68 88 01 00 00	 push	 392			; 00000188H
  019d7	8b 85 14 fb ff
	ff		 mov	 eax, DWORD PTR _pDragInfo$144695[ebp]
  019dd	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  019e0	51		 push	 ecx
  019e1	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  019e7	a3 00 00 00 00	 mov	 DWORD PTR ?DragItemIndex@@3JA, eax ; DragItemIndex

; 1387 :             SetWindowLongPtr(hDlg, DWLP_MSGRESULT, TRUE);

  019ec	6a 01		 push	 1
  019ee	6a 00		 push	 0
  019f0	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  019f3	52		 push	 edx
  019f4	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowLongW@12

; 1388 :             Item = LBItemFromPt(pDragInfo->hWnd, pDragInfo->ptCursor, FALSE);

  019fa	6a 00		 push	 0
  019fc	8b 85 14 fb ff
	ff		 mov	 eax, DWORD PTR _pDragInfo$144695[ebp]
  01a02	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  01a05	51		 push	 ecx
  01a06	8b 50 08	 mov	 edx, DWORD PTR [eax+8]
  01a09	52		 push	 edx
  01a0a	8b 85 14 fb ff
	ff		 mov	 eax, DWORD PTR _pDragInfo$144695[ebp]
  01a10	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  01a13	51		 push	 ecx
  01a14	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__LBItemFromPt@16
  01a1a	89 85 10 fb ff
	ff		 mov	 DWORD PTR _Item$144694[ebp], eax

; 1389 :             DrawInsert(hDlg, pDragInfo->hWnd, Item);

  01a20	8b 95 10 fb ff
	ff		 mov	 edx, DWORD PTR _Item$144694[ebp]
  01a26	52		 push	 edx
  01a27	8b 85 14 fb ff
	ff		 mov	 eax, DWORD PTR _pDragInfo$144695[ebp]
  01a2d	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  01a30	51		 push	 ecx
  01a31	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01a34	52		 push	 edx
  01a35	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__DrawInsert@12

; 1390 :             break;

  01a3b	e9 bf 01 00 00	 jmp	 $LN12@ProgramLis@2
$LN10@ProgramLis@2:

; 1391 :         case DL_DROPPED:
; 1392 :             DrawInsert(hDlg, pDragInfo->hWnd, -1);

  01a40	6a ff		 push	 -1
  01a42	8b 85 14 fb ff
	ff		 mov	 eax, DWORD PTR _pDragInfo$144695[ebp]
  01a48	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  01a4b	51		 push	 ecx
  01a4c	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01a4f	52		 push	 edx
  01a50	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__DrawInsert@12

; 1393 :             Item = LBItemFromPt(pDragInfo->hWnd, pDragInfo->ptCursor, FALSE);

  01a56	6a 00		 push	 0
  01a58	8b 85 14 fb ff
	ff		 mov	 eax, DWORD PTR _pDragInfo$144695[ebp]
  01a5e	8b 48 0c	 mov	 ecx, DWORD PTR [eax+12]
  01a61	51		 push	 ecx
  01a62	8b 50 08	 mov	 edx, DWORD PTR [eax+8]
  01a65	52		 push	 edx
  01a66	8b 85 14 fb ff
	ff		 mov	 eax, DWORD PTR _pDragInfo$144695[ebp]
  01a6c	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  01a6f	51		 push	 ecx
  01a70	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__LBItemFromPt@16
  01a76	89 85 10 fb ff
	ff		 mov	 DWORD PTR _Item$144694[ebp], eax

; 1394 :             if((Item >= 0) && (Item != DragItemIndex))

  01a7c	83 bd 10 fb ff
	ff 00		 cmp	 DWORD PTR _Item$144694[ebp], 0
  01a83	0f 8c 0d 01 00
	00		 jl	 $LN9@ProgramLis@2
  01a89	8b 95 10 fb ff
	ff		 mov	 edx, DWORD PTR _Item$144694[ebp]
  01a8f	3b 15 00 00 00
	00		 cmp	 edx, DWORD PTR ?DragItemIndex@@3JA ; DragItemIndex
  01a95	0f 84 fb 00 00
	00		 je	 $LN9@ProgramLis@2

; 1395 :             {
; 1396 :                 CurrentProgram = DragItemIndex;

  01a9b	a1 00 00 00 00	 mov	 eax, DWORD PTR ?DragItemIndex@@3JA ; DragItemIndex
  01aa0	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 1397 :                 if(Item < DragItemIndex)

  01aa5	8b 8d 10 fb ff
	ff		 mov	 ecx, DWORD PTR _Item$144694[ebp]
  01aab	3b 0d 00 00 00
	00		 cmp	 ecx, DWORD PTR ?DragItemIndex@@3JA ; DragItemIndex
  01ab1	7d 3b		 jge	 SHORT $LN8@ProgramLis@2
$LN7@ProgramLis@2:

; 1398 :                 {
; 1399 :                     while(CurrentProgram > Item)

  01ab3	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01ab9	3b 95 10 fb ff
	ff		 cmp	 edx, DWORD PTR _Item$144694[ebp]
  01abf	7e 2b		 jle	 SHORT $LN6@ProgramLis@2

; 1400 :                     {
; 1401 :                         MyChannels.SwapChannels(CurrentProgram, CurrentProgram - 1);

  01ac1	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01ac6	83 e8 01	 sub	 eax, 1
  01ac9	50		 push	 eax
  01aca	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01ad0	51		 push	 ecx
  01ad1	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  01ad6	e8 00 00 00 00	 call	 ?SwapChannels@CChannelList@@QAEXHH@Z ; CChannelList::SwapChannels

; 1402 :                         --CurrentProgram;

  01adb	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01ae1	83 ea 01	 sub	 edx, 1
  01ae4	89 15 00 00 00
	00		 mov	 DWORD PTR ?CurrentProgram@@3JA, edx ; CurrentProgram

; 1403 :                     }

  01aea	eb c7		 jmp	 SHORT $LN7@ProgramLis@2
$LN6@ProgramLis@2:

; 1404 :                 }
; 1405 :                 else

  01aec	eb 37		 jmp	 SHORT $LN3@ProgramLis@2
$LN8@ProgramLis@2:

; 1406 :                 {
; 1407 :                     while(CurrentProgram < Item)

  01aee	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01af3	3b 85 10 fb ff
	ff		 cmp	 eax, DWORD PTR _Item$144694[ebp]
  01af9	7d 2a		 jge	 SHORT $LN3@ProgramLis@2

; 1408 :                     {
; 1409 :                         MyChannels.SwapChannels(CurrentProgram, CurrentProgram + 1);

  01afb	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01b01	83 c1 01	 add	 ecx, 1
  01b04	51		 push	 ecx
  01b05	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01b0b	52		 push	 edx
  01b0c	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  01b11	e8 00 00 00 00	 call	 ?SwapChannels@CChannelList@@QAEXHH@Z ; CChannelList::SwapChannels

; 1410 :                         ++CurrentProgram;

  01b16	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01b1b	83 c0 01	 add	 eax, 1
  01b1e	a3 00 00 00 00	 mov	 DWORD PTR ?CurrentProgram@@3JA, eax ; CurrentProgram

; 1411 :                     }

  01b23	eb c9		 jmp	 SHORT $LN8@ProgramLis@2
$LN3@ProgramLis@2:

; 1412 :                 }
; 1413 :                 CurrentProgram = Item;

  01b25	8b 8d 10 fb ff
	ff		 mov	 ecx, DWORD PTR _Item$144694[ebp]
  01b2b	89 0d 00 00 00
	00		 mov	 DWORD PTR ?CurrentProgram@@3JA, ecx ; CurrentProgram

; 1414 :                 int TopIndex = 0;

  01b31	c7 85 0c fb ff
	ff 00 00 00 00	 mov	 DWORD PTR _TopIndex$144714[ebp], 0

; 1415 :                 TopIndex = ListBox_GetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST));

  01b3b	6a 00		 push	 0
  01b3d	6a 00		 push	 0
  01b3f	68 8e 01 00 00	 push	 398			; 0000018eH
  01b44	68 c4 06 00 00	 push	 1732			; 000006c4H
  01b49	8b 55 08	 mov	 edx, DWORD PTR _hDlg$[ebp]
  01b4c	52		 push	 edx
  01b4d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01b53	50		 push	 eax
  01b54	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
  01b5a	89 85 0c fb ff
	ff		 mov	 DWORD PTR _TopIndex$144714[ebp], eax

; 1416 :                 RefreshProgramList(hDlg, CurrentProgram);

  01b60	a1 00 00 00 00	 mov	 eax, DWORD PTR ?CurrentProgram@@3JA ; CurrentProgram
  01b65	50		 push	 eax
  01b66	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  01b69	51		 push	 ecx
  01b6a	e8 00 00 00 00	 call	 ?RefreshProgramList@@YAXPAUHWND__@@H@Z ; RefreshProgramList
  01b6f	83 c4 08	 add	 esp, 8

; 1417 :                 ListBox_SetTopIndex(GetDlgItem(hDlg, IDC_PROGRAMLIST), TopIndex);

  01b72	6a 00		 push	 0
  01b74	8b 95 0c fb ff
	ff		 mov	 edx, DWORD PTR _TopIndex$144714[ebp]
  01b7a	52		 push	 edx
  01b7b	68 97 01 00 00	 push	 407			; 00000197H
  01b80	68 c4 06 00 00	 push	 1732			; 000006c4H
  01b85	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01b88	50		 push	 eax
  01b89	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetDlgItem@8
  01b8f	50		 push	 eax
  01b90	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SendMessageW@16
$LN9@ProgramLis@2:

; 1418 :             }
; 1419 :             break;

  01b96	eb 67		 jmp	 SHORT $LN12@ProgramLis@2
$LN2@ProgramLis@2:

; 1420 :         case DL_CANCELDRAG:
; 1421 :             DrawInsert(hDlg, pDragInfo->hWnd, -1);

  01b98	6a ff		 push	 -1
  01b9a	8b 8d 14 fb ff
	ff		 mov	 ecx, DWORD PTR _pDragInfo$144695[ebp]
  01ba0	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  01ba3	52		 push	 edx
  01ba4	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01ba7	50		 push	 eax
  01ba8	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__DrawInsert@12

; 1422 :             break;

  01bae	eb 4f		 jmp	 SHORT $LN12@ProgramLis@2
$LN1@ProgramLis@2:

; 1423 :         case DL_DRAGGING:
; 1424 :             Item = LBItemFromPt(pDragInfo->hWnd, pDragInfo->ptCursor, TRUE);

  01bb0	6a 01		 push	 1
  01bb2	8b 8d 14 fb ff
	ff		 mov	 ecx, DWORD PTR _pDragInfo$144695[ebp]
  01bb8	8b 51 0c	 mov	 edx, DWORD PTR [ecx+12]
  01bbb	52		 push	 edx
  01bbc	8b 41 08	 mov	 eax, DWORD PTR [ecx+8]
  01bbf	50		 push	 eax
  01bc0	8b 8d 14 fb ff
	ff		 mov	 ecx, DWORD PTR _pDragInfo$144695[ebp]
  01bc6	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  01bc9	52		 push	 edx
  01bca	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__LBItemFromPt@16
  01bd0	89 85 10 fb ff
	ff		 mov	 DWORD PTR _Item$144694[ebp], eax

; 1425 :             DrawInsert(hDlg, pDragInfo->hWnd, Item);

  01bd6	8b 85 10 fb ff
	ff		 mov	 eax, DWORD PTR _Item$144694[ebp]
  01bdc	50		 push	 eax
  01bdd	8b 8d 14 fb ff
	ff		 mov	 ecx, DWORD PTR _pDragInfo$144695[ebp]
  01be3	8b 51 04	 mov	 edx, DWORD PTR [ecx+4]
  01be6	52		 push	 edx
  01be7	8b 45 08	 mov	 eax, DWORD PTR _hDlg$[ebp]
  01bea	50		 push	 eax
  01beb	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__DrawInsert@12

; 1426 :             SetWindowLongPtr(hDlg, DWLP_MSGRESULT, DL_MOVECURSOR);

  01bf1	6a 03		 push	 3
  01bf3	6a 00		 push	 0
  01bf5	8b 4d 08	 mov	 ecx, DWORD PTR _hDlg$[ebp]
  01bf8	51		 push	 ecx
  01bf9	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__SetWindowLongW@12
$LN12@ProgramLis@2:

; 1427 :             break;
; 1428 :         }
; 1429 :         return (TRUE);

  01bff	b8 01 00 00 00	 mov	 eax, 1
  01c04	eb 02		 jmp	 SHORT $LN116@ProgramLis@2
$LN14@ProgramLis@2:

; 1430 :     }
; 1431 : 
; 1432 :     return (FALSE);

  01c06	33 c0		 xor	 eax, eax
$LN116@ProgramLis@2:

; 1433 : }

  01c08	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  01c0b	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  01c12	59		 pop	 ecx
  01c13	8b 4d f0	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  01c16	33 cd		 xor	 ecx, ebp
  01c18	e8 00 00 00 00	 call	 @__security_check_cookie@4
  01c1d	8b e5		 mov	 esp, ebp
  01c1f	5d		 pop	 ebp
  01c20	c2 10 00	 ret	 16			; 00000010H
  01c23	90		 npad	 1
$LN141@ProgramLis@2:
  01c24	00 00 00 00	 DD	 $LN76@ProgramLis@2
  01c28	00 00 00 00	 DD	 $LN113@ProgramLis@2
  01c2c	00 00 00 00	 DD	 $LN74@ProgramLis@2
  01c30	00 00 00 00	 DD	 $LN99@ProgramLis@2
  01c34	00 00 00 00	 DD	 $LN114@ProgramLis@2
$LN138@ProgramLis@2:
  01c38	00		 DB	 0
  01c39	04		 DB	 4
  01c3a	04		 DB	 4
  01c3b	04		 DB	 4
  01c3c	04		 DB	 4
  01c3d	04		 DB	 4
  01c3e	04		 DB	 4
  01c3f	04		 DB	 4
  01c40	04		 DB	 4
  01c41	04		 DB	 4
  01c42	04		 DB	 4
  01c43	04		 DB	 4
  01c44	04		 DB	 4
  01c45	04		 DB	 4
  01c46	04		 DB	 4
  01c47	04		 DB	 4
  01c48	04		 DB	 4
  01c49	04		 DB	 4
  01c4a	04		 DB	 4
  01c4b	04		 DB	 4
  01c4c	04		 DB	 4
  01c4d	04		 DB	 4
  01c4e	04		 DB	 4
  01c4f	04		 DB	 4
  01c50	04		 DB	 4
  01c51	04		 DB	 4
  01c52	04		 DB	 4
  01c53	04		 DB	 4
  01c54	04		 DB	 4
  01c55	04		 DB	 4
  01c56	04		 DB	 4
  01c57	04		 DB	 4
  01c58	04		 DB	 4
  01c59	04		 DB	 4
  01c5a	04		 DB	 4
  01c5b	04		 DB	 4
  01c5c	04		 DB	 4
  01c5d	04		 DB	 4
  01c5e	04		 DB	 4
  01c5f	04		 DB	 4
  01c60	04		 DB	 4
  01c61	04		 DB	 4
  01c62	04		 DB	 4
  01c63	04		 DB	 4
  01c64	04		 DB	 4
  01c65	04		 DB	 4
  01c66	04		 DB	 4
  01c67	04		 DB	 4
  01c68	04		 DB	 4
  01c69	04		 DB	 4
  01c6a	04		 DB	 4
  01c6b	04		 DB	 4
  01c6c	04		 DB	 4
  01c6d	04		 DB	 4
  01c6e	04		 DB	 4
  01c6f	04		 DB	 4
  01c70	04		 DB	 4
  01c71	04		 DB	 4
  01c72	04		 DB	 4
  01c73	04		 DB	 4
  01c74	04		 DB	 4
  01c75	04		 DB	 4
  01c76	04		 DB	 4
  01c77	04		 DB	 4
  01c78	04		 DB	 4
  01c79	04		 DB	 4
  01c7a	04		 DB	 4
  01c7b	04		 DB	 4
  01c7c	04		 DB	 4
  01c7d	04		 DB	 4
  01c7e	04		 DB	 4
  01c7f	04		 DB	 4
  01c80	04		 DB	 4
  01c81	04		 DB	 4
  01c82	04		 DB	 4
  01c83	04		 DB	 4
  01c84	04		 DB	 4
  01c85	04		 DB	 4
  01c86	04		 DB	 4
  01c87	04		 DB	 4
  01c88	04		 DB	 4
  01c89	04		 DB	 4
  01c8a	04		 DB	 4
  01c8b	04		 DB	 4
  01c8c	04		 DB	 4
  01c8d	04		 DB	 4
  01c8e	04		 DB	 4
  01c8f	04		 DB	 4
  01c90	04		 DB	 4
  01c91	04		 DB	 4
  01c92	04		 DB	 4
  01c93	04		 DB	 4
  01c94	04		 DB	 4
  01c95	04		 DB	 4
  01c96	04		 DB	 4
  01c97	04		 DB	 4
  01c98	04		 DB	 4
  01c99	04		 DB	 4
  01c9a	04		 DB	 4
  01c9b	04		 DB	 4
  01c9c	04		 DB	 4
  01c9d	04		 DB	 4
  01c9e	04		 DB	 4
  01c9f	04		 DB	 4
  01ca0	04		 DB	 4
  01ca1	04		 DB	 4
  01ca2	04		 DB	 4
  01ca3	04		 DB	 4
  01ca4	04		 DB	 4
  01ca5	04		 DB	 4
  01ca6	04		 DB	 4
  01ca7	04		 DB	 4
  01ca8	04		 DB	 4
  01ca9	04		 DB	 4
  01caa	04		 DB	 4
  01cab	04		 DB	 4
  01cac	04		 DB	 4
  01cad	04		 DB	 4
  01cae	04		 DB	 4
  01caf	04		 DB	 4
  01cb0	04		 DB	 4
  01cb1	04		 DB	 4
  01cb2	04		 DB	 4
  01cb3	04		 DB	 4
  01cb4	04		 DB	 4
  01cb5	04		 DB	 4
  01cb6	04		 DB	 4
  01cb7	04		 DB	 4
  01cb8	04		 DB	 4
  01cb9	04		 DB	 4
  01cba	04		 DB	 4
  01cbb	04		 DB	 4
  01cbc	04		 DB	 4
  01cbd	04		 DB	 4
  01cbe	04		 DB	 4
  01cbf	04		 DB	 4
  01cc0	04		 DB	 4
  01cc1	04		 DB	 4
  01cc2	04		 DB	 4
  01cc3	04		 DB	 4
  01cc4	04		 DB	 4
  01cc5	04		 DB	 4
  01cc6	04		 DB	 4
  01cc7	04		 DB	 4
  01cc8	04		 DB	 4
  01cc9	04		 DB	 4
  01cca	04		 DB	 4
  01ccb	04		 DB	 4
  01ccc	04		 DB	 4
  01ccd	04		 DB	 4
  01cce	04		 DB	 4
  01ccf	04		 DB	 4
  01cd0	04		 DB	 4
  01cd1	04		 DB	 4
  01cd2	04		 DB	 4
  01cd3	04		 DB	 4
  01cd4	04		 DB	 4
  01cd5	04		 DB	 4
  01cd6	04		 DB	 4
  01cd7	04		 DB	 4
  01cd8	04		 DB	 4
  01cd9	04		 DB	 4
  01cda	04		 DB	 4
  01cdb	04		 DB	 4
  01cdc	04		 DB	 4
  01cdd	04		 DB	 4
  01cde	04		 DB	 4
  01cdf	04		 DB	 4
  01ce0	04		 DB	 4
  01ce1	04		 DB	 4
  01ce2	04		 DB	 4
  01ce3	04		 DB	 4
  01ce4	04		 DB	 4
  01ce5	04		 DB	 4
  01ce6	04		 DB	 4
  01ce7	04		 DB	 4
  01ce8	04		 DB	 4
  01ce9	04		 DB	 4
  01cea	04		 DB	 4
  01ceb	04		 DB	 4
  01cec	04		 DB	 4
  01ced	04		 DB	 4
  01cee	04		 DB	 4
  01cef	04		 DB	 4
  01cf0	04		 DB	 4
  01cf1	04		 DB	 4
  01cf2	04		 DB	 4
  01cf3	04		 DB	 4
  01cf4	04		 DB	 4
  01cf5	04		 DB	 4
  01cf6	04		 DB	 4
  01cf7	04		 DB	 4
  01cf8	04		 DB	 4
  01cf9	04		 DB	 4
  01cfa	04		 DB	 4
  01cfb	04		 DB	 4
  01cfc	04		 DB	 4
  01cfd	04		 DB	 4
  01cfe	04		 DB	 4
  01cff	04		 DB	 4
  01d00	04		 DB	 4
  01d01	04		 DB	 4
  01d02	04		 DB	 4
  01d03	04		 DB	 4
  01d04	04		 DB	 4
  01d05	04		 DB	 4
  01d06	04		 DB	 4
  01d07	04		 DB	 4
  01d08	04		 DB	 4
  01d09	04		 DB	 4
  01d0a	04		 DB	 4
  01d0b	04		 DB	 4
  01d0c	04		 DB	 4
  01d0d	04		 DB	 4
  01d0e	04		 DB	 4
  01d0f	04		 DB	 4
  01d10	04		 DB	 4
  01d11	04		 DB	 4
  01d12	04		 DB	 4
  01d13	04		 DB	 4
  01d14	04		 DB	 4
  01d15	04		 DB	 4
  01d16	04		 DB	 4
  01d17	04		 DB	 4
  01d18	04		 DB	 4
  01d19	04		 DB	 4
  01d1a	01		 DB	 1
  01d1b	02		 DB	 2
  01d1c	04		 DB	 4
  01d1d	04		 DB	 4
  01d1e	03		 DB	 3
  01d1f	90		 npad	 1
$LN142@ProgramLis@2:
  01d20	00 00 00 00	 DD	 $LN44@ProgramLis@2
  01d24	00 00 00 00	 DD	 $LN54@ProgramLis@2
  01d28	00 00 00 00	 DD	 $LN57@ProgramLis@2
  01d2c	00 00 00 00	 DD	 $LN24@ProgramLis@2
  01d30	00 00 00 00	 DD	 $LN26@ProgramLis@2
  01d34	00 00 00 00	 DD	 $LN67@ProgramLis@2
  01d38	00 00 00 00	 DD	 $LN61@ProgramLis@2
  01d3c	00 00 00 00	 DD	 $LN37@ProgramLis@2
  01d40	00 00 00 00	 DD	 $LN15@ProgramLis@2
$LN139@ProgramLis@2:
  01d44	00		 DB	 0
  01d45	08		 DB	 8
  01d46	08		 DB	 8
  01d47	08		 DB	 8
  01d48	08		 DB	 8
  01d49	08		 DB	 8
  01d4a	08		 DB	 8
  01d4b	08		 DB	 8
  01d4c	08		 DB	 8
  01d4d	08		 DB	 8
  01d4e	08		 DB	 8
  01d4f	08		 DB	 8
  01d50	08		 DB	 8
  01d51	08		 DB	 8
  01d52	01		 DB	 1
  01d53	08		 DB	 8
  01d54	08		 DB	 8
  01d55	08		 DB	 8
  01d56	08		 DB	 8
  01d57	08		 DB	 8
  01d58	08		 DB	 8
  01d59	08		 DB	 8
  01d5a	08		 DB	 8
  01d5b	08		 DB	 8
  01d5c	08		 DB	 8
  01d5d	08		 DB	 8
  01d5e	08		 DB	 8
  01d5f	08		 DB	 8
  01d60	08		 DB	 8
  01d61	08		 DB	 8
  01d62	08		 DB	 8
  01d63	02		 DB	 2
  01d64	03		 DB	 3
  01d65	04		 DB	 4
  01d66	08		 DB	 8
  01d67	08		 DB	 8
  01d68	08		 DB	 8
  01d69	08		 DB	 8
  01d6a	08		 DB	 8
  01d6b	08		 DB	 8
  01d6c	08		 DB	 8
  01d6d	08		 DB	 8
  01d6e	08		 DB	 8
  01d6f	08		 DB	 8
  01d70	08		 DB	 8
  01d71	08		 DB	 8
  01d72	08		 DB	 8
  01d73	08		 DB	 8
  01d74	08		 DB	 8
  01d75	08		 DB	 8
  01d76	08		 DB	 8
  01d77	08		 DB	 8
  01d78	08		 DB	 8
  01d79	08		 DB	 8
  01d7a	08		 DB	 8
  01d7b	08		 DB	 8
  01d7c	08		 DB	 8
  01d7d	08		 DB	 8
  01d7e	08		 DB	 8
  01d7f	08		 DB	 8
  01d80	08		 DB	 8
  01d81	08		 DB	 8
  01d82	05		 DB	 5
  01d83	08		 DB	 8
  01d84	08		 DB	 8
  01d85	06		 DB	 6
  01d86	08		 DB	 8
  01d87	08		 DB	 8
  01d88	08		 DB	 8
  01d89	08		 DB	 8
  01d8a	08		 DB	 8
  01d8b	08		 DB	 8
  01d8c	08		 DB	 8
  01d8d	08		 DB	 8
  01d8e	08		 DB	 8
  01d8f	08		 DB	 8
  01d90	08		 DB	 8
  01d91	08		 DB	 8
  01d92	08		 DB	 8
  01d93	08		 DB	 8
  01d94	08		 DB	 8
  01d95	08		 DB	 8
  01d96	08		 DB	 8
  01d97	08		 DB	 8
  01d98	08		 DB	 8
  01d99	08		 DB	 8
  01d9a	08		 DB	 8
  01d9b	08		 DB	 8
  01d9c	08		 DB	 8
  01d9d	08		 DB	 8
  01d9e	08		 DB	 8
  01d9f	08		 DB	 8
  01da0	08		 DB	 8
  01da1	08		 DB	 8
  01da2	08		 DB	 8
  01da3	08		 DB	 8
  01da4	08		 DB	 8
  01da5	08		 DB	 8
  01da6	08		 DB	 8
  01da7	08		 DB	 8
  01da8	08		 DB	 8
  01da9	08		 DB	 8
  01daa	08		 DB	 8
  01dab	08		 DB	 8
  01dac	07		 DB	 7
  01dad	8d 49 00	 npad	 3
$LN143@ProgramLis@2:
  01db0	00 00 00 00	 DD	 $LN11@ProgramLis@2
  01db4	00 00 00 00	 DD	 $LN1@ProgramLis@2
  01db8	00 00 00 00	 DD	 $LN10@ProgramLis@2
  01dbc	00 00 00 00	 DD	 $LN2@ProgramLis@2
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$0:
  00000	8d 8d 04 fb ff
	ff		 lea	 ecx, DWORD PTR $T360368[ebp]
  00006	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VITuner@@@@QAE@XZ ; SmartPtr<ITuner>::~SmartPtr<ITuner>
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$1:
  0000b	8d 8d e8 fa ff
	ff		 lea	 ecx, DWORD PTR $T360371[ebp]
  00011	e9 00 00 00 00	 jmp	 ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ; std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$2:
  00016	8d 8d cc fa ff
	ff		 lea	 ecx, DWORD PTR $T360372[ebp]
  0001c	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$3:
  00021	8d 8d 4c fa ff
	ff		 lea	 ecx, DWORD PTR $T360373[ebp]
  00027	e9 00 00 00 00	 jmp	 ??1MakeString@@QAE@XZ
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$4:
  0002c	8d 8d 30 fa ff
	ff		 lea	 ecx, DWORD PTR $T360374[ebp]
  00032	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$5:
  00037	8d 8d c4 fb ff
	ff		 lea	 ecx, DWORD PTR _errorMessage$144388[ebp]
  0003d	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$6:
  00042	8b 85 24 fa ff
	ff		 mov	 eax, DWORD PTR $T360377[ebp]
  00048	50		 push	 eax
  00049	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  0004e	59		 pop	 ecx
  0004f	c3		 ret	 0
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$7:
  00050	8d 8d 4c fb ff
	ff		 lea	 ecx, DWORD PTR _NewChannel$144598[ebp]
  00056	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCChannel@@@@QAE@XZ ; SmartPtr<CChannel>::~SmartPtr<CChannel>
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$8:
  0005b	8b 8d 20 fa ff
	ff		 mov	 ecx, DWORD PTR $T360380[ebp]
  00061	e9 00 00 00 00	 jmp	 ??1?$SmartPtr@VCChannel@@@@QAE@XZ ; SmartPtr<CChannel>::~SmartPtr<CChannel>
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$9:
  00066	8d 8d a0 f9 ff
	ff		 lea	 ecx, DWORD PTR $T360381[ebp]
  0006c	e9 00 00 00 00	 jmp	 ??1MakeString@@QAE@XZ
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$10:
  00071	8d 8d 84 f9 ff
	ff		 lea	 ecx, DWORD PTR $T360382[ebp]
  00077	e9 00 00 00 00	 jmp	 ??1?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@XZ ; std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >
__unwindfunclet$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z$11:
  0007c	8d 8d 18 fb ff
	ff		 lea	 ecx, DWORD PTR _dummy$144679[ebp]
  00082	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$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z:
  00087	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0008b	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0008e	8b 8a 2c f9 ff
	ff		 mov	 ecx, DWORD PTR [edx-1748]
  00094	33 c8		 xor	 ecx, eax
  00096	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0009b	8b 4a fc	 mov	 ecx, DWORD PTR [edx-4]
  0009e	33 c8		 xor	 ecx, eax
  000a0	e8 00 00 00 00	 call	 @__security_check_cookie@4
  000a5	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?ProgramListProc@@YGHPAUHWND__@@IIJ@Z
  000aa	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?ProgramListProc@@YGHPAUHWND__@@IIJ@Z ENDP		; ProgramListProc
; Function compile flags: /Odtp
;	COMDAT ??__EMyChannels@@YAXXZ
text$yc	SEGMENT
??__EMyChannels@@YAXXZ PROC				; `dynamic initializer for 'MyChannels'', COMDAT

; 84   : CUserChannels MyChannels;

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00008	e8 00 00 00 00	 call	 ??0CUserChannels@@QAE@XZ ; CUserChannels::CUserChannels
  0000d	68 00 00 00 00	 push	 OFFSET ??__FMyChannels@@YAXXZ ; `dynamic atexit destructor for 'MyChannels''
  00012	e8 00 00 00 00	 call	 _atexit
  00017	83 c4 04	 add	 esp, 4
  0001a	5d		 pop	 ebp
  0001b	c3		 ret	 0
??__EMyChannels@@YAXXZ ENDP				; `dynamic initializer for 'MyChannels''
; Function compile flags: /Odtp
text$yc	ENDS
;	COMDAT ??__EMyCountries@@YAXXZ
text$yc	SEGMENT
??__EMyCountries@@YAXXZ PROC				; `dynamic initializer for 'MyCountries'', COMDAT

; 85   : CCountryList MyCountries;

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00008	e8 00 00 00 00	 call	 ??0CCountryList@@QAE@XZ	; CCountryList::CCountryList
  0000d	68 00 00 00 00	 push	 OFFSET ??__FMyCountries@@YAXXZ ; `dynamic atexit destructor for 'MyCountries''
  00012	e8 00 00 00 00	 call	 _atexit
  00017	83 c4 04	 add	 esp, 4
  0001a	5d		 pop	 ebp
  0001b	c3		 ret	 0
??__EMyCountries@@YAXXZ ENDP				; `dynamic initializer for 'MyCountries''
; Function compile flags: /Odtp
;	COMDAT ??__FMyCountries@@YAXXZ
text$yd	SEGMENT
??__FMyCountries@@YAXXZ PROC				; `dynamic atexit destructor for 'MyCountries'', COMDAT
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyCountries@@3VCCountryList@@A ; MyCountries
  00008	e8 00 00 00 00	 call	 ??1CCountryList@@QAE@XZ	; CCountryList::~CCountryList
  0000d	5d		 pop	 ebp
  0000e	c3		 ret	 0
??__FMyCountries@@YAXXZ ENDP				; `dynamic atexit destructor for 'MyCountries''
; Function compile flags: /Odtp
;	COMDAT ??__FMyChannels@@YAXXZ
text$yd	SEGMENT
??__FMyChannels@@YAXXZ PROC				; `dynamic atexit destructor for 'MyChannels'', COMDAT
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	b9 00 00 00 00	 mov	 ecx, OFFSET ?MyChannels@@3VCUserChannels@@A ; MyChannels
  00008	e8 00 00 00 00	 call	 ??1CUserChannels@@UAE@XZ ; CUserChannels::~CUserChannels
  0000d	5d		 pop	 ebp
  0000e	c3		 ret	 0
??__FMyChannels@@YAXXZ ENDP				; `dynamic atexit destructor for 'MyChannels''
PUBLIC	?MyCountries@@3VCCountryList@@A			; MyCountries
PUBLIC	?MyChannels@@3VCUserChannels@@A			; MyChannels
?MyCountries@@3VCCountryList@@A DB 018H DUP (?)		; MyCountries
?MyChannels@@3VCUserChannels@@A DB 02cH DUP (?)		; MyChannels
_MyChannels$initializer$ DD FLAT:??__EMyChannels@@YAXXZ
_MyCountries$initializer$ DD FLAT:??__EMyCountries@@YAXXZ
END
