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

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

INCLUDELIB OLDNAMES

PUBLIC	?GetDefaultAddress@CTDA8275@@MBEEXZ		; CTDA8275::GetDefaultAddress
PUBLIC	??_R4CTDA8275@@6BCI2CDevice@@@			; CTDA8275::`RTTI Complete Object Locator'
PUBLIC	?SetFrequency@CTDA8275@@MAEHJW4eTDA8290Standard@@@Z ; CTDA8275::SetFrequency
PUBLIC	?WriteTDA8275Initialization@CTDA8275@@MAEXXZ	; CTDA8275::WriteTDA8275Initialization
PUBLIC	?GetAFCStatus@CTDA8275@@UAE?AW4eTunerAFCStatus@@AAJ@Z ; CTDA8275::GetAFCStatus
PUBLIC	?IsLocked@CTDA8275@@UAE?AW4eTunerLocked@@XZ	; CTDA8275::IsLocked
PUBLIC	?GetFrequency@CTDA8275@@UAEJXZ			; CTDA8275::GetFrequency
PUBLIC	?SetRadioFrequency@CTDA8275@@UAEHJ@Z		; CTDA8275::SetRadioFrequency
PUBLIC	?SetTVFrequency@CTDA8275@@UAEHJW4eVideoFormat@@@Z ; CTDA8275::SetTVFrequency
PUBLIC	?HasRadio@CTDA8275@@UBEHXZ			; CTDA8275::HasRadio
PUBLIC	?GetDefaultVideoFormat@CTDA8275@@UAE?AW4eVideoFormat@@XZ ; CTDA8275::GetDefaultVideoFormat
PUBLIC	?InitializeTuner@CTDA8275@@UAEHXZ		; CTDA8275::InitializeTuner
PUBLIC	??_R4CTDA8275@@6BITuner@@@			; CTDA8275::`RTTI Complete Object Locator'
PUBLIC	??_R3CTDA8275@@8				; CTDA8275::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CTDA8275@@8				; CTDA8275::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CTDA8275@@8			; CTDA8275::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCTDA8275@@@8				; CTDA8275 `RTTI Type Descriptor'
PUBLIC	?GetTunerId@CTDA8275@@UAE?AW4eTunerId@@XZ	; CTDA8275::GetTunerId
PUBLIC	??_GCTDA8275@@UAEPAXI@Z				; CTDA8275::`scalar deleting destructor'
PUBLIC	??_ECTDA8275@@WM@AEPAXI@Z			; [thunk]:CTDA8275::`vector deleting destructor'
PUBLIC	?k_programmingTable@CTDA8275@@1QBUtProgramingParam@1@B ; CTDA8275::k_programmingTable
PUBLIC	?k_programmingTable2@CTDA8275@@1QBUtProgramingParam2@1@B ; CTDA8275::k_programmingTable2
PUBLIC	?k_programmingTable3@CTDA8275@@1QBUtProgramingParam3@1@B ; CTDA8275::k_programmingTable3
PUBLIC	?k_standardParamTable@CTDA8275@@1QBUtStandardParam@1@B ; CTDA8275::k_standardParamTable
PUBLIC	??_C@_1EE@EOMDFPHM@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AAA?$AA?5?$AAr?$AAe?$AAv?$AAi?$AAs?$AAi?$AAo?$AAn?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd@ ; `string'
PUBLIC	??_C@_1CA@FEIJJPDP@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?4?$AA?$AA@ ; `string'
PUBLIC	??_C@_1FM@LJHOHGAI@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAE?$AAr?$AAr?$AAo?$AAr?$AA?5?$AAw?$AAh?$AAi?$AAl?$AAe?$AA?5?$AAd?$AAe?$AAt?$AAe?$AAc?$AAt?$AAi?$AAn?$AAg?$AA?5?$AAc@ ; `string'
PUBLIC	??_7CTDA8275@@6BITuner@@@			; CTDA8275::`vftable'
PUBLIC	??_7CTDA8275@@6BCI2CDevice@@@			; CTDA8275::`vftable'
EXTRN	??_ECTDA8275@@UAEPAXI@Z:PROC			; CTDA8275::`vector deleting destructor'
;	COMDAT ??_7CTDA8275@@6BCI2CDevice@@@
CONST	SEGMENT
??_7CTDA8275@@6BCI2CDevice@@@ DD FLAT:??_R4CTDA8275@@6BCI2CDevice@@@ ; CTDA8275::`vftable'
	DD	FLAT:??_ECTDA8275@@WM@AEPAXI@Z
	DD	FLAT:?GetDefaultAddress@CTDA8275@@MBEEXZ
CONST	ENDS
;	COMDAT ??_R4CTDA8275@@6BCI2CDevice@@@
rdata$r	SEGMENT
??_R4CTDA8275@@6BCI2CDevice@@@ DD 00H			; CTDA8275::`RTTI Complete Object Locator'
	DD	0cH
	DD	00H
	DD	FLAT:??_R0?AVCTDA8275@@@8
	DD	FLAT:??_R3CTDA8275@@8
rdata$r	ENDS
;	COMDAT ??_7CTDA8275@@6BITuner@@@
CONST	SEGMENT
??_7CTDA8275@@6BITuner@@@ DD FLAT:??_R4CTDA8275@@6BITuner@@@ ; CTDA8275::`vftable'
	DD	FLAT:??_ECTDA8275@@UAEPAXI@Z
	DD	FLAT:?InitializeTuner@CTDA8275@@UAEHXZ
	DD	FLAT:?GetTunerId@CTDA8275@@UAE?AW4eTunerId@@XZ
	DD	FLAT:?GetDefaultVideoFormat@CTDA8275@@UAE?AW4eVideoFormat@@XZ
	DD	FLAT:?HasRadio@CTDA8275@@UBEHXZ
	DD	FLAT:?SetTVFrequency@CTDA8275@@UAEHJW4eVideoFormat@@@Z
	DD	FLAT:?SetRadioFrequency@CTDA8275@@UAEHJ@Z
	DD	FLAT:?GetFrequency@CTDA8275@@UAEJXZ
	DD	FLAT:?IsLocked@CTDA8275@@UAE?AW4eTunerLocked@@XZ
	DD	FLAT:?GetAFCStatus@CTDA8275@@UAE?AW4eTunerAFCStatus@@AAJ@Z
	DD	FLAT:?AttachIFDem@ITuner@@UAEXV?$SmartPtr@VIExternalIFDemodulator@@@@@Z
	DD	FLAT:?WriteTDA8275Initialization@CTDA8275@@MAEXXZ
	DD	FLAT:?SetFrequency@CTDA8275@@MAEHJW4eTDA8290Standard@@@Z
CONST	ENDS
;	COMDAT ??_R4CTDA8275@@6BITuner@@@
rdata$r	SEGMENT
??_R4CTDA8275@@6BITuner@@@ DD 00H			; CTDA8275::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCTDA8275@@@8
	DD	FLAT:??_R3CTDA8275@@8
rdata$r	ENDS
;	COMDAT ??_R3CTDA8275@@8
rdata$r	SEGMENT
??_R3CTDA8275@@8 DD 00H					; CTDA8275::`RTTI Class Hierarchy Descriptor'
	DD	01H
	DD	04H
	DD	FLAT:??_R2CTDA8275@@8
rdata$r	ENDS
;	COMDAT ??_R2CTDA8275@@8
rdata$r	SEGMENT
??_R2CTDA8275@@8 DD FLAT:??_R1A@?0A@EA@CTDA8275@@8	; CTDA8275::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@II2CTuner@@8
	DD	FLAT:??_R1A@?0A@EA@ITuner@@8
	DD	FLAT:??_R1M@?0A@EA@CI2CDevice@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CTDA8275@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CTDA8275@@8 DD FLAT:??_R0?AVCTDA8275@@@8	; CTDA8275::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	03H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CTDA8275@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCTDA8275@@@8
_DATA	SEGMENT
??_R0?AVCTDA8275@@@8 DD FLAT:??_7type_info@@6B@		; CTDA8275 `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCTDA8275@@', 00H
_DATA	ENDS
;	COMDAT ??_C@_1FM@LJHOHGAI@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAE?$AAr?$AAr?$AAo?$AAr?$AA?5?$AAw?$AAh?$AAi?$AAl?$AAe?$AA?5?$AAd?$AAe?$AAt?$AAe?$AAc?$AAt?$AAi?$AAn?$AAg?$AA?5?$AAc@
CONST	SEGMENT
??_C@_1FM@LJHOHGAI@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAE?$AAr?$AAr?$AAo?$AAr?$AA?5?$AAw?$AAh?$AAi?$AAl?$AAe?$AA?5?$AAd?$AAe?$AAt?$AAe?$AAc?$AAt?$AAi?$AAn?$AAg?$AA?5?$AAc@ DB 'T'
	DB	00H, 'D', 00H, 'A', 00H, '8', 00H, '2', 00H, '7', 00H, '5', 00H
	DB	':', 00H, ' ', 00H, 'E', 00H, 'r', 00H, 'r', 00H, 'o', 00H, 'r'
	DB	00H, ' ', 00H, 'w', 00H, 'h', 00H, 'i', 00H, 'l', 00H, 'e', 00H
	DB	' ', 00H, 'd', 00H, 'e', 00H, 't', 00H, 'e', 00H, 'c', 00H, 't'
	DB	00H, 'i', 00H, 'n', 00H, 'g', 00H, ' ', 00H, 'c', 00H, 'h', 00H
	DB	'i', 00H, 'p', 00H, ' ', 00H, 'r', 00H, 'e', 00H, 'v', 00H, 'i'
	DB	00H, 's', 00H, 'i', 00H, 'o', 00H, 'n', 00H, '.', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1CA@FEIJJPDP@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?4?$AA?$AA@
CONST	SEGMENT
??_C@_1CA@FEIJJPDP@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?4?$AA?$AA@ DB 'T'
	DB	00H, 'D', 00H, 'A', 00H, '8', 00H, '2', 00H, '7', 00H, '5', 00H
	DB	':', 00H, ' ', 00H, 'F', 00H, 'o', 00H, 'u', 00H, 'n', 00H, 'd'
	DB	00H, '.', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1EE@EOMDFPHM@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AAA?$AA?5?$AAr?$AAe?$AAv?$AAi?$AAs?$AAi?$AAo?$AAn?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd@
CONST	SEGMENT
??_C@_1EE@EOMDFPHM@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AAA?$AA?5?$AAr?$AAe?$AAv?$AAi?$AAs?$AAi?$AAo?$AAn?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd@ DB 'T'
	DB	00H, 'D', 00H, 'A', 00H, '8', 00H, '2', 00H, '7', 00H, '5', 00H
	DB	':', 00H, ' ', 00H, 'T', 00H, 'D', 00H, 'A', 00H, '8', 00H, '2'
	DB	00H, '7', 00H, '5', 00H, 'A', 00H, ' ', 00H, 'r', 00H, 'e', 00H
	DB	'v', 00H, 'i', 00H, 's', 00H, 'i', 00H, 'o', 00H, 'n', 00H, ' '
	DB	00H, 'f', 00H, 'o', 00H, 'u', 00H, 'n', 00H, 'd', 00H, '.', 00H
	DB	00H, 00H					; `string'
?k_programmingTable@CTDA8275@@1QBUtProgramingParam@1@B DW 037H ; CTDA8275::k_programmingTable
	DW	03eH
	DB	03H
	DB	02H
	DB	00H
	DB	00H
	DB	03H
	DB	01H
	DW	03eH
	DW	042H
	DB	03H
	DB	03H
	DB	00H
	DB	00H
	DB	03H
	DB	01H
	DW	042H
	DW	04cH
	DB	03H
	DB	01H
	DB	00H
	DB	00H
	DB	03H
	DB	00H
	DW	04cH
	DW	054H
	DB	03H
	DB	02H
	DB	00H
	DB	00H
	DB	03H
	DB	00H
	DW	054H
	DW	05dH
	DB	03H
	DB	02H
	DB	00H
	DB	00H
	DB	01H
	DB	00H
	DW	05dH
	DW	062H
	DB	03H
	DB	03H
	DB	00H
	DB	00H
	DB	01H
	DB	00H
	DW	062H
	DW	06dH
	DB	03H
	DB	03H
	DB	01H
	DB	00H
	DB	01H
	DB	00H
	DW	06dH
	DW	07bH
	DB	02H
	DB	02H
	DB	01H
	DB	00H
	DB	01H
	DB	01H
	DW	07bH
	DW	085H
	DB	02H
	DB	03H
	DB	01H
	DB	00H
	DB	01H
	DB	01H
	DW	085H
	DW	097H
	DB	02H
	DB	01H
	DB	01H
	DB	00H
	DB	01H
	DB	00H
	DW	097H
	DW	09aH
	DB	02H
	DB	02H
	DB	01H
	DB	00H
	DB	01H
	DB	00H
	DW	09aH
	DW	0b5H
	DB	02H
	DB	02H
	DB	01H
	DB	00H
	DB	00H
	DB	00H
	DW	0b5H
	DW	0b9H
	DB	02H
	DB	02H
	DB	02H
	DB	00H
	DB	01H
	DB	00H
	DW	0b9H
	DW	0d9H
	DB	02H
	DB	03H
	DB	02H
	DB	00H
	DB	01H
	DB	00H
	DW	0d9H
	DW	0f4H
	DB	01H
	DB	02H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	DW	0f4H
	DW	0109H
	DB	01H
	DB	03H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	DW	0109H
	DW	012eH
	DB	01H
	DB	01H
	DB	02H
	DB	00H
	DB	01H
	DB	00H
	DW	012eH
	DW	0144H
	DB	01H
	DB	02H
	DB	02H
	DB	00H
	DB	01H
	DB	00H
	DW	0144H
	DW	0172H
	DB	01H
	DB	02H
	DB	03H
	DB	00H
	DB	01H
	DB	00H
	DW	0172H
	DW	01c6H
	DB	01H
	DB	03H
	DB	03H
	DB	00H
	DB	01H
	DB	00H
	DW	01c6H
	DW	01edH
	DB	00H
	DB	02H
	DB	03H
	DB	00H
	DB	01H
	DB	01H
	DW	01edH
	DW	0212H
	DB	00H
	DB	03H
	DB	03H
	DB	00H
	DB	01H
	DB	01H
	DW	0212H
	DW	022aH
	DB	00H
	DB	01H
	DB	03H
	DB	00H
	DB	01H
	DB	00H
	DW	022aH
	DW	025cH
	DB	00H
	DB	01H
	DB	04H
	DB	00H
	DB	00H
	DB	00H
	DW	025cH
	DW	02b8H
	DB	00H
	DB	02H
	DB	04H
	DB	00H
	DB	00H
	DB	00H
	DW	02b8H
	DW	02e4H
	DB	00H
	DB	02H
	DB	04H
	DB	01H
	DB	00H
	DB	00H
	DW	02e4H
	DW	0334H
	DB	00H
	DB	03H
	DB	04H
	DB	00H
	DB	00H
	DB	00H
	DW	0334H
	DW	0361H
	DB	00H
	DB	03H
	DB	04H
	DB	01H
	DB	00H
	DB	00H
?k_programmingTable2@CTDA8275@@1QBUtProgramingParam2@1@B DW 031H ; CTDA8275::k_programmingTable2
	DW	038H
	DB	03H
	DB	04H
	DB	00H
	DB	00H
	DB	03H
	ORG $+1
	DW	038H
	DW	043H
	DB	00H
	DB	03H
	DB	00H
	DB	00H
	DB	03H
	ORG $+1
	DW	043H
	DW	051H
	DB	01H
	DB	03H
	DB	00H
	DB	00H
	DB	03H
	ORG $+1
	DW	051H
	DW	061H
	DB	02H
	DB	03H
	DB	00H
	DB	00H
	DB	03H
	ORG $+1
	DW	061H
	DW	071H
	DB	03H
	DB	03H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	071H
	DW	086H
	DB	00H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	086H
	DW	09aH
	DB	01H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	09aH
	DW	0a2H
	DB	01H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	0a2H
	DW	0b7H
	DB	02H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	0b7H
	DW	0c3H
	DB	02H
	DB	02H
	DB	00H
	DB	02H
	DB	01H
	ORG $+1
	DW	0c3H
	DW	0e3H
	DB	03H
	DB	02H
	DB	00H
	DB	02H
	DB	03H
	ORG $+1
	DW	0e3H
	DW	010dH
	DB	00H
	DB	01H
	DB	00H
	DB	02H
	DB	03H
	ORG $+1
	DW	010dH
	DW	0145H
	DB	01H
	DB	01H
	DB	00H
	DB	02H
	DB	01H
	ORG $+1
	DW	0145H
	DW	0186H
	DB	02H
	DB	01H
	DB	00H
	DB	03H
	DB	03H
	ORG $+1
	DW	0186H
	DW	01c7H
	DB	03H
	DB	01H
	DB	00H
	DB	03H
	DB	03H
	ORG $+1
	DW	01c7H
	DW	0208H
	DB	00H
	DB	00H
	DB	00H
	DB	03H
	DB	01H
	ORG $+1
	DW	0208H
	DW	021aH
	DB	00H
	DB	00H
	DB	01H
	DB	03H
	DB	01H
	ORG $+1
	DW	021aH
	DW	022aH
	DB	01H
	DB	00H
	DB	00H
	DB	03H
	DB	01H
	ORG $+1
	DW	022aH
	DW	026cH
	DB	01H
	DB	00H
	DB	00H
	DB	04H
	DB	00H
	ORG $+1
	DW	026cH
	DW	028aH
	DB	01H
	DB	00H
	DB	01H
	DB	04H
	DB	00H
	ORG $+1
	DW	028aH
	DW	02bcH
	DB	02H
	DB	00H
	DB	00H
	DB	04H
	DB	00H
	ORG $+1
	DW	02bcH
	DW	030cH
	DB	02H
	DB	00H
	DB	01H
	DB	04H
	DB	00H
	ORG $+1
	DW	030cH
	DW	0334H
	DB	03H
	DB	00H
	DB	00H
	DB	04H
	DB	00H
	ORG $+1
	DW	0334H
	DW	0366H
	DB	03H
	DB	00H
	DB	01H
	DB	04H
	DB	00H
	ORG $+1
	DW	0366H
	DW	038fH
	DB	03H
	DB	00H
	DB	02H
	DB	04H
	DB	00H
	ORG $+1
	ORG $+6
?k_programmingTable3@CTDA8275@@1QBUtProgramingParam3@1@B DW 031H ; CTDA8275::k_programmingTable3
	DW	039H
	DB	03H
	DB	04H
	DB	00H
	DB	00H
	DB	01H
	ORG $+1
	DW	039H
	DW	043H
	DB	00H
	DB	03H
	DB	00H
	DB	00H
	DB	01H
	ORG $+1
	DW	043H
	DW	051H
	DB	01H
	DB	03H
	DB	00H
	DB	00H
	DB	01H
	ORG $+1
	DW	051H
	DW	062H
	DB	02H
	DB	03H
	DB	00H
	DB	00H
	DB	01H
	ORG $+1
	DW	062H
	DW	072H
	DB	03H
	DB	03H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	072H
	DW	087H
	DB	00H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	087H
	DW	09aH
	DB	01H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	09aH
	DW	0a3H
	DB	01H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	0a3H
	DW	0b7H
	DB	02H
	DB	02H
	DB	00H
	DB	01H
	DB	01H
	ORG $+1
	DW	0b7H
	DW	0c3H
	DB	02H
	DB	02H
	DB	00H
	DB	02H
	DB	01H
	ORG $+1
	DW	0c3H
	DW	0e4H
	DB	03H
	DB	02H
	DB	00H
	DB	02H
	DB	01H
	ORG $+1
	DW	0e4H
	DW	010dH
	DB	00H
	DB	01H
	DB	00H
	DB	02H
	DB	01H
	ORG $+1
	DW	010dH
	DW	0122H
	DB	01H
	DB	01H
	DB	00H
	DB	02H
	DB	01H
	ORG $+1
	DW	0122H
	DW	0145H
	DB	01H
	DB	01H
	DB	00H
	DB	03H
	DB	01H
	ORG $+1
	DW	0145H
	DW	0186H
	DB	02H
	DB	01H
	DB	00H
	DB	03H
	DB	01H
	ORG $+1
	DW	0186H
	DW	01c7H
	DB	03H
	DB	01H
	DB	00H
	DB	03H
	DB	01H
	ORG $+1
	DW	01c7H
	DW	0208H
	DB	00H
	DB	00H
	DB	00H
	DB	03H
	DB	01H
	ORG $+1
	DW	0208H
	DW	021aH
	DB	00H
	DB	00H
	DB	01H
	DB	03H
	DB	01H
	ORG $+1
	DW	021aH
	DW	0226H
	DB	01H
	DB	00H
	DB	00H
	DB	03H
	DB	01H
	ORG $+1
	DW	0226H
	DW	026cH
	DB	01H
	DB	00H
	DB	00H
	DB	04H
	DB	00H
	ORG $+1
	DW	026cH
	DW	028aH
	DB	01H
	DB	00H
	DB	01H
	DB	04H
	DB	00H
	ORG $+1
	DW	028aH
	DW	02bcH
	DB	02H
	DB	00H
	DB	00H
	DB	04H
	DB	00H
	ORG $+1
	DW	02bcH
	DW	030cH
	DB	02H
	DB	00H
	DB	01H
	DB	04H
	DB	00H
	ORG $+1
	DW	030cH
	DW	0334H
	DB	03H
	DB	00H
	DB	00H
	DB	04H
	DB	00H
	ORG $+1
	DW	0334H
	DW	0366H
	DB	03H
	DB	00H
	DB	01H
	DB	04H
	DB	00H
	ORG $+1
	ORG $+2
?k_standardParamTable@CTDA8275@@1QBUtStandardParam@1@B DW 01676H ; CTDA8275::k_standardParamTable
	DB	01H
	ORG $+1
	DW	01a5eH
	DB	00H
	ORG $+1
	DW	01e46H
	DB	00H
	ORG $+1
	DW	01e46H
	DB	00H
	ORG $+1
	DW	01e46H
	DB	00H
	ORG $+1
	DW	01e46H
	DB	00H
	ORG $+1
	DW	04e2H
	DB	00H
	ORG $+1
	DW	0128eH
	DB	00H
	ORG $+1
; Function compile flags: /Odtp
;	COMDAT ??_ECTDA8275@@WM@AEPAXI@Z
_TEXT	SEGMENT
??_ECTDA8275@@WM@AEPAXI@Z PROC				; [thunk]:CTDA8275::`vector deleting destructor', COMDAT
  00000	83 e9 0c	 sub	 ecx, 12			; 0000000cH
  00003	e9 00 00 00 00	 jmp	 ??_ECTDA8275@@UAEPAXI@Z
??_ECTDA8275@@WM@AEPAXI@Z ENDP				; [thunk]:CTDA8275::`vector deleting destructor'
_TEXT	ENDS
PUBLIC	?IsDvbMode@CTDA8275@@AAEHXZ			; CTDA8275::IsDvbMode
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\tda8275.cpp
;	COMDAT ?IsDvbMode@CTDA8275@@AAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?IsDvbMode@CTDA8275@@AAEHXZ PROC			; CTDA8275::IsDvbMode, COMDAT
; _this$ = ecx

; 254  : {

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

; 255  :     // \TODO
; 256  :     return FALSE;

  00007	33 c0		 xor	 eax, eax

; 257  : }

  00009	8b e5		 mov	 esp, ebp
  0000b	5d		 pop	 ebp
  0000c	c3		 ret	 0
?IsDvbMode@CTDA8275@@AAEHXZ ENDP			; CTDA8275::IsDvbMode
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?GetDefaultAddress@CTDA8275@@MBEEXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetDefaultAddress@CTDA8275@@MBEEXZ PROC		; CTDA8275::GetDefaultAddress, COMDAT
; _this$ = ecx

; 224  : {

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

; 225  :     return I2C_ADDR_TDA8275_1;

  00007	b0 61		 mov	 al, 97			; 00000061H

; 226  : }

  00009	8b e5		 mov	 esp, ebp
  0000b	5d		 pop	 ebp
  0000c	c3		 ret	 0
?GetDefaultAddress@CTDA8275@@MBEEXZ ENDP		; CTDA8275::GetDefaultAddress
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?GetFrequency@CTDA8275@@UAEJXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetFrequency@CTDA8275@@UAEJXZ PROC			; CTDA8275::GetFrequency, COMDAT
; _this$ = ecx

; 198  : {

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

; 199  :     return m_Frequency;

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

; 200  : }

  0000d	8b e5		 mov	 esp, ebp
  0000f	5d		 pop	 ebp
  00010	c3		 ret	 0
?GetFrequency@CTDA8275@@UAEJXZ ENDP			; CTDA8275::GetFrequency
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?SetRadioFrequency@CTDA8275@@UAEHJ@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
_frequencyHz$ = 8					; size = 4
?SetRadioFrequency@CTDA8275@@UAEHJ@Z PROC		; CTDA8275::SetRadioFrequency, COMDAT
; _this$ = ecx

; 192  : {

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

; 193  :     // This tuning of radio has not been tested AT ALL;
; 194  :     return SetTVFrequency(frequencyHz, (eVideoFormat)(VIDEOFORMAT_LASTONE+1));

  00007	6a 1b		 push	 27			; 0000001bH
  00009	8b 45 08	 mov	 eax, DWORD PTR _frequencyHz$[ebp]
  0000c	50		 push	 eax
  0000d	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00010	8b 11		 mov	 edx, DWORD PTR [ecx]
  00012	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00015	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  00018	ff d0		 call	 eax

; 195  : }

  0001a	8b e5		 mov	 esp, ebp
  0001c	5d		 pop	 ebp
  0001d	c2 04 00	 ret	 4
?SetRadioFrequency@CTDA8275@@UAEHJ@Z ENDP		; CTDA8275::SetRadioFrequency
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?HasRadio@CTDA8275@@UBEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?HasRadio@CTDA8275@@UBEHXZ PROC				; CTDA8275::HasRadio, COMDAT
; _this$ = ecx

; 169  : {

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

; 170  :     return TRUE;

  00007	b8 01 00 00 00	 mov	 eax, 1

; 171  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?HasRadio@CTDA8275@@UBEHXZ ENDP				; CTDA8275::HasRadio
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?GetDefaultVideoFormat@CTDA8275@@UAE?AW4eVideoFormat@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetDefaultVideoFormat@CTDA8275@@UAE?AW4eVideoFormat@@XZ PROC ; CTDA8275::GetDefaultVideoFormat, COMDAT
; _this$ = ecx

; 164  : {

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

; 165  :     return VIDEOFORMAT_NTSC_M;

  00007	b8 11 00 00 00	 mov	 eax, 17			; 00000011H

; 166  : }

  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?GetDefaultVideoFormat@CTDA8275@@UAE?AW4eVideoFormat@@XZ ENDP ; CTDA8275::GetDefaultVideoFormat
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?InitializeTuner@CTDA8275@@UAEHXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?InitializeTuner@CTDA8275@@UAEHXZ PROC			; CTDA8275::InitializeTuner, COMDAT
; _this$ = ecx

; 158  : {

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

; 159  :     WriteTDA8275Initialization();

  00007	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  0000a	8b 10		 mov	 edx, DWORD PTR [eax]
  0000c	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000f	8b 42 2c	 mov	 eax, DWORD PTR [edx+44]
  00012	ff d0		 call	 eax

; 160  :     return TRUE;

  00014	b8 01 00 00 00	 mov	 eax, 1

; 161  : }

  00019	8b e5		 mov	 esp, ebp
  0001b	5d		 pop	 ebp
  0001c	c3		 ret	 0
?InitializeTuner@CTDA8275@@UAEHXZ ENDP			; CTDA8275::InitializeTuner
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\tda8275.h
_TEXT	ENDS
;	COMDAT ?GetTunerId@CTDA8275@@UAE?AW4eTunerId@@XZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetTunerId@CTDA8275@@UAE?AW4eTunerId@@XZ PROC		; CTDA8275::GetTunerId, COMDAT
; _this$ = ecx

; 85   :     virtual eTunerId        GetTunerId() { return TUNER_TDA8275; }

  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	b8 3b 00 00 00	 mov	 eax, 59			; 0000003bH
  0000c	8b e5		 mov	 esp, ebp
  0000e	5d		 pop	 ebp
  0000f	c3		 ret	 0
?GetTunerId@CTDA8275@@UAE?AW4eTunerId@@XZ ENDP		; CTDA8275::GetTunerId
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\tda8275.cpp
;	COMDAT ?IsLocked@CTDA8275@@UAE?AW4eTunerLocked@@XZ
_TEXT	SEGMENT
_this$ = -8						; size = 4
_Result$ = -1						; size = 1
?IsLocked@CTDA8275@@UAE?AW4eTunerLocked@@XZ PROC	; CTDA8275::IsLocked, COMDAT
; _this$ = ecx

; 203  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 08	 sub	 esp, 8
  00006	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 204  :     BYTE Result(0);

  00009	c6 45 ff 00	 mov	 BYTE PTR _Result$[ebp], 0

; 205  :     if (ReadFromSubAddress(TDA8275_SR1, &Result, 1))

  0000d	6a 01		 push	 1
  0000f	8d 45 ff	 lea	 eax, DWORD PTR _Result$[ebp]
  00012	50		 push	 eax
  00013	6a 10		 push	 16			; 00000010H
  00015	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00018	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0001b	e8 00 00 00 00	 call	 ?ReadFromSubAddress@CI2CDevice@@QAEHEPAEI@Z ; CI2CDevice::ReadFromSubAddress
  00020	85 c0		 test	 eax, eax
  00022	74 0f		 je	 SHORT $LN1@IsLocked@2

; 206  :     {
; 207  :         // LOCK = bit 22
; 208  :         return (Result & 0x40) != 0 ? TUNER_LOCK_ON : TUNER_LOCK_OFF;

  00024	0f b6 45 ff	 movzx	 eax, BYTE PTR _Result$[ebp]
  00028	83 e0 40	 and	 eax, 64			; 00000040H
  0002b	f7 d8		 neg	 eax
  0002d	1b c0		 sbb	 eax, eax
  0002f	f7 d8		 neg	 eax
  00031	eb 03		 jmp	 SHORT $LN2@IsLocked@2
$LN1@IsLocked@2:

; 209  :     }
; 210  : 
; 211  :     return TUNER_LOCK_NOTSUPPORTED;

  00033	83 c8 ff	 or	 eax, -1
$LN2@IsLocked@2:

; 212  : }

  00036	8b e5		 mov	 esp, ebp
  00038	5d		 pop	 ebp
  00039	c3		 ret	 0
?IsLocked@CTDA8275@@UAE?AW4eTunerLocked@@XZ ENDP	; CTDA8275::IsLocked
; Function compile flags: /Odtp
;	COMDAT ?GetAFCStatus@CTDA8275@@UAE?AW4eTunerAFCStatus@@AAJ@Z
_TEXT	SEGMENT
tv80 = -8						; size = 4
_this$ = -4						; size = 4
_nFreqDeviation$ = 8					; size = 4
?GetAFCStatus@CTDA8275@@UAE?AW4eTunerAFCStatus@@AAJ@Z PROC ; CTDA8275::GetAFCStatus, COMDAT
; _this$ = ecx

; 215  : {

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

; 216  :     if (m_ExternalIFDemodulator.IsValid())

  00009	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	83 c1 04	 add	 ecx, 4
  0000f	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VIExternalIFDemodulator@@@@QBEHXZ ; SmartPtr<IExternalIFDemodulator>::IsValid
  00014	85 c0		 test	 eax, eax
  00016	74 21		 je	 SHORT $LN1@GetAFCStat@3

; 217  :     {
; 218  :         return m_ExternalIFDemodulator->GetAFCStatus(nFreqDeviation);

  00018	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001b	83 c1 04	 add	 ecx, 4
  0001e	e8 00 00 00 00	 call	 ??C?$SmartPtr@VIExternalIFDemodulator@@@@QBEPAVIExternalIFDemodulator@@XZ ; SmartPtr<IExternalIFDemodulator>::operator->
  00023	89 45 f8	 mov	 DWORD PTR tv80[ebp], eax
  00026	8b 45 08	 mov	 eax, DWORD PTR _nFreqDeviation$[ebp]
  00029	50		 push	 eax
  0002a	8b 4d f8	 mov	 ecx, DWORD PTR tv80[ebp]
  0002d	8b 11		 mov	 edx, DWORD PTR [ecx]
  0002f	8b 4d f8	 mov	 ecx, DWORD PTR tv80[ebp]
  00032	8b 42 1c	 mov	 eax, DWORD PTR [edx+28]
  00035	ff d0		 call	 eax
  00037	eb 03		 jmp	 SHORT $LN2@GetAFCStat@3
$LN1@GetAFCStat@3:

; 219  :     }
; 220  :     return TUNER_AFC_NOTSUPPORTED;

  00039	83 c8 ff	 or	 eax, -1
$LN2@GetAFCStat@3:

; 221  : }

  0003c	8b e5		 mov	 esp, ebp
  0003e	5d		 pop	 ebp
  0003f	c2 04 00	 ret	 4
?GetAFCStatus@CTDA8275@@UAE?AW4eTunerAFCStatus@@AAJ@Z ENDP ; CTDA8275::GetAFCStatus
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?SetTVFrequency@CTDA8275@@UAEHJW4eVideoFormat@@@Z
_TEXT	SEGMENT
tv142 = -16						; size = 4
tv80 = -12						; size = 4
_this$ = -8						; size = 4
_success$ = -4						; size = 4
_frequencyHz$ = 8					; size = 4
_videoFormat$ = 12					; size = 4
?SetTVFrequency@CTDA8275@@UAEHJW4eVideoFormat@@@Z PROC	; CTDA8275::SetTVFrequency, COMDAT
; _this$ = ecx

; 174  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 10	 sub	 esp, 16			; 00000010H
  00006	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 175  :     if (m_ExternalIFDemodulator.IsValid())

  00009	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0000c	83 c1 04	 add	 ecx, 4
  0000f	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VIExternalIFDemodulator@@@@QBEHXZ ; SmartPtr<IExternalIFDemodulator>::IsValid
  00014	85 c0		 test	 eax, eax
  00016	74 21		 je	 SHORT $LN2@SetTVFrequ

; 176  :     {
; 177  :         m_ExternalIFDemodulator->TunerSet(TRUE, videoFormat);

  00018	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0001b	83 c1 04	 add	 ecx, 4
  0001e	e8 00 00 00 00	 call	 ??C?$SmartPtr@VIExternalIFDemodulator@@@@QBEPAVIExternalIFDemodulator@@XZ ; SmartPtr<IExternalIFDemodulator>::operator->
  00023	89 45 f4	 mov	 DWORD PTR tv80[ebp], eax
  00026	8b 45 0c	 mov	 eax, DWORD PTR _videoFormat$[ebp]
  00029	50		 push	 eax
  0002a	6a 01		 push	 1
  0002c	8b 4d f4	 mov	 ecx, DWORD PTR tv80[ebp]
  0002f	8b 11		 mov	 edx, DWORD PTR [ecx]
  00031	8b 4d f4	 mov	 ecx, DWORD PTR tv80[ebp]
  00034	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  00037	ff d0		 call	 eax
$LN2@SetTVFrequ:

; 178  :     }
; 179  : 
; 180  :     BOOL success = SetFrequency(frequencyHz, CTDA8290::GetTDA8290Standard(videoFormat));

  00039	8b 4d 0c	 mov	 ecx, DWORD PTR _videoFormat$[ebp]
  0003c	51		 push	 ecx
  0003d	e8 00 00 00 00	 call	 ?GetTDA8290Standard@CTDA8290@@SA?AW4eTDA8290Standard@@W4eVideoFormat@@@Z ; CTDA8290::GetTDA8290Standard
  00042	83 c4 04	 add	 esp, 4
  00045	50		 push	 eax
  00046	8b 55 08	 mov	 edx, DWORD PTR _frequencyHz$[ebp]
  00049	52		 push	 edx
  0004a	8b 45 f8	 mov	 eax, DWORD PTR _this$[ebp]
  0004d	8b 10		 mov	 edx, DWORD PTR [eax]
  0004f	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00052	8b 42 30	 mov	 eax, DWORD PTR [edx+48]
  00055	ff d0		 call	 eax
  00057	89 45 fc	 mov	 DWORD PTR _success$[ebp], eax

; 181  :     m_Frequency = frequencyHz;

  0005a	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0005d	8b 55 08	 mov	 edx, DWORD PTR _frequencyHz$[ebp]
  00060	89 51 18	 mov	 DWORD PTR [ecx+24], edx

; 182  : 
; 183  :     if (m_ExternalIFDemodulator.IsValid())

  00063	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00066	83 c1 04	 add	 ecx, 4
  00069	e8 00 00 00 00	 call	 ?IsValid@?$SmartPtr@VIExternalIFDemodulator@@@@QBEHXZ ; SmartPtr<IExternalIFDemodulator>::IsValid
  0006e	85 c0		 test	 eax, eax
  00070	74 21		 je	 SHORT $LN1@SetTVFrequ

; 184  :     {
; 185  :         m_ExternalIFDemodulator->TunerSet(FALSE, videoFormat);

  00072	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00075	83 c1 04	 add	 ecx, 4
  00078	e8 00 00 00 00	 call	 ??C?$SmartPtr@VIExternalIFDemodulator@@@@QBEPAVIExternalIFDemodulator@@XZ ; SmartPtr<IExternalIFDemodulator>::operator->
  0007d	89 45 f0	 mov	 DWORD PTR tv142[ebp], eax
  00080	8b 45 0c	 mov	 eax, DWORD PTR _videoFormat$[ebp]
  00083	50		 push	 eax
  00084	6a 00		 push	 0
  00086	8b 4d f0	 mov	 ecx, DWORD PTR tv142[ebp]
  00089	8b 11		 mov	 edx, DWORD PTR [ecx]
  0008b	8b 4d f0	 mov	 ecx, DWORD PTR tv142[ebp]
  0008e	8b 42 14	 mov	 eax, DWORD PTR [edx+20]
  00091	ff d0		 call	 eax
$LN1@SetTVFrequ:

; 186  :     }
; 187  : 
; 188  :     return success;

  00093	8b 45 fc	 mov	 eax, DWORD PTR _success$[ebp]

; 189  : }

  00096	8b e5		 mov	 esp, ebp
  00098	5d		 pop	 ebp
  00099	c2 08 00	 ret	 8
?SetTVFrequency@CTDA8275@@UAEHJW4eVideoFormat@@@Z ENDP	; CTDA8275::SetTVFrequency
PUBLIC	??1CTDA8275@@UAE@XZ				; CTDA8275::~CTDA8275
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??1CTDA8275@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CTDA8275@@UAE@XZ$0
__ehfuncinfo$??1CTDA8275@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CTDA8275@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CTDA8275@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CTDA8275@@UAE@XZ PROC				; CTDA8275::~CTDA8275, COMDAT
; _this$ = ecx

; 154  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??1CTDA8275@@UAE@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00029	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CTDA8275@@6BITuner@@@
  0002f	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00032	c7 41 0c 00 00
	00 00		 mov	 DWORD PTR [ecx+12], OFFSET ??_7CTDA8275@@6BCI2CDevice@@@
  00039	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0

; 155  : }

  00040	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00047	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0004a	e8 00 00 00 00	 call	 ??1II2CTuner@@UAE@XZ	; II2CTuner::~II2CTuner
  0004f	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00052	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00059	59		 pop	 ecx
  0005a	8b e5		 mov	 esp, ebp
  0005c	5d		 pop	 ebp
  0005d	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1CTDA8275@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1II2CTuner@@UAE@XZ	; II2CTuner::~II2CTuner
__ehhandler$??1CTDA8275@@UAE@XZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??1CTDA8275@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CTDA8275@@UAE@XZ ENDP				; CTDA8275::~CTDA8275
; Function compile flags: /Odtp
;	COMDAT ??_GCTDA8275@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCTDA8275@@UAEPAXI@Z PROC				; CTDA8275::`scalar deleting destructor', COMDAT
; _this$ = ecx
  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	51		 push	 ecx
  00004	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx
  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ??1CTDA8275@@UAE@XZ	; CTDA8275::~CTDA8275
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@117
  00017	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001a	51		 push	 ecx
  0001b	e8 00 00 00 00	 call	 ??3@YAXPAX@Z		; operator delete
  00020	83 c4 04	 add	 esp, 4
$LN1@scalar@117:
  00023	8b 45 fc	 mov	 eax, DWORD PTR _this$[ebp]
  00026	8b e5		 mov	 esp, ebp
  00028	5d		 pop	 ebp
  00029	c2 04 00	 ret	 4
??_GCTDA8275@@UAEPAXI@Z ENDP				; CTDA8275::`scalar deleting destructor'
_TEXT	ENDS
PUBLIC	??0CTDA8275@@QAE@XZ				; CTDA8275::CTDA8275
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CTDA8275@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CTDA8275@@QAE@XZ$0
__ehfuncinfo$??0CTDA8275@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CTDA8275@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CTDA8275@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0CTDA8275@@QAE@XZ PROC				; CTDA8275::CTDA8275, COMDAT
; _this$ = ecx

; 150  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CTDA8275@@QAE@XZ
  0000a	64 a1 00 00 00
	00		 mov	 eax, DWORD PTR fs:0
  00010	50		 push	 eax
  00011	51		 push	 ecx
  00012	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  00017	33 c5		 xor	 eax, ebp
  00019	50		 push	 eax
  0001a	8d 45 f4	 lea	 eax, DWORD PTR __$EHRec$[ebp]
  0001d	64 a3 00 00 00
	00		 mov	 DWORD PTR fs:0, eax
  00023	89 4d f0	 mov	 DWORD PTR _this$[ebp], ecx
  00026	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00029	e8 00 00 00 00	 call	 ??0II2CTuner@@QAE@XZ	; II2CTuner::II2CTuner
  0002e	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00035	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00038	c7 00 00 00 00
	00		 mov	 DWORD PTR [eax], OFFSET ??_7CTDA8275@@6BITuner@@@
  0003e	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00041	c7 41 0c 00 00
	00 00		 mov	 DWORD PTR [ecx+12], OFFSET ??_7CTDA8275@@6BCI2CDevice@@@

; 151  : }

  00048	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0004f	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00052	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00055	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0005c	59		 pop	 ecx
  0005d	8b e5		 mov	 esp, ebp
  0005f	5d		 pop	 ebp
  00060	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CTDA8275@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1II2CTuner@@UAE@XZ	; II2CTuner::~II2CTuner
__ehhandler$??0CTDA8275@@QAE@XZ:
  00008	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  0000c	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  0000f	8b 4a f8	 mov	 ecx, DWORD PTR [edx-8]
  00012	33 c8		 xor	 ecx, eax
  00014	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00019	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$??0CTDA8275@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CTDA8275@@QAE@XZ ENDP				; CTDA8275::CTDA8275
PUBLIC	?IsTDA8275A@CTDA8275@@AAEHXZ			; CTDA8275::IsTDA8275A
; Function compile flags: /Odtp
;	COMDAT ?IsTDA8275A@CTDA8275@@AAEHXZ
_TEXT	SEGMENT
_this$ = -8						; size = 4
_Result$ = -1						; size = 1
?IsTDA8275A@CTDA8275@@AAEHXZ PROC			; CTDA8275::IsTDA8275A, COMDAT
; _this$ = ecx

; 229  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 08	 sub	 esp, 8
  00006	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 230  :     BYTE Result(0);

  00009	c6 45 ff 00	 mov	 BYTE PTR _Result$[ebp], 0

; 231  : 
; 232  :     // Read HID Bit's (18:21) : 0000 = TDA8275
; 233  :     //                          0010 = TDA8275A
; 234  : 
; 235  :     if (ReadFromSubAddress(TDA8275_SR1, &Result, 1))

  0000d	6a 01		 push	 1
  0000f	8d 45 ff	 lea	 eax, DWORD PTR _Result$[ebp]
  00012	50		 push	 eax
  00013	6a 10		 push	 16			; 00000010H
  00015	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00018	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0001b	e8 00 00 00 00	 call	 ?ReadFromSubAddress@CI2CDevice@@QAEHEPAEI@Z ; CI2CDevice::ReadFromSubAddress
  00020	85 c0		 test	 eax, eax
  00022	74 37		 je	 SHORT $LN3@IsTDA8275A

; 236  :     {
; 237  :         if ((Result & 0x3C) == 0x08)

  00024	0f b6 4d ff	 movzx	 ecx, BYTE PTR _Result$[ebp]
  00028	83 e1 3c	 and	 ecx, 60			; 0000003cH
  0002b	83 f9 08	 cmp	 ecx, 8
  0002e	75 18		 jne	 SHORT $LN2@IsTDA8275A

; 238  :         {
; 239  :             LOG(1, _T("TDA8275: TDA8275A revision found."));

  00030	68 00 00 00 00	 push	 OFFSET ??_C@_1EE@EOMDFPHM@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AAA?$AA?5?$AAr?$AAe?$AAv?$AAi?$AAs?$AAi?$AAo?$AAn?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd@
  00035	6a 01		 push	 1
  00037	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0003c	83 c4 08	 add	 esp, 8

; 240  :             return TRUE;

  0003f	b8 01 00 00 00	 mov	 eax, 1
  00044	eb 26		 jmp	 SHORT $LN4@IsTDA8275A

; 241  :         }
; 242  :         else

  00046	eb 13		 jmp	 SHORT $LN3@IsTDA8275A
$LN2@IsTDA8275A:

; 243  :         {
; 244  :             LOG(1, _T("TDA8275: Found."));

  00048	68 00 00 00 00	 push	 OFFSET ??_C@_1CA@FEIJJPDP@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAF?$AAo?$AAu?$AAn?$AAd?$AA?4?$AA?$AA@
  0004d	6a 01		 push	 1
  0004f	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00054	83 c4 08	 add	 esp, 8

; 245  :             return FALSE;

  00057	33 c0		 xor	 eax, eax
  00059	eb 11		 jmp	 SHORT $LN4@IsTDA8275A
$LN3@IsTDA8275A:

; 246  :         }
; 247  :     }
; 248  : 
; 249  :     LOG(0, _T("TDA8275: Error while detecting chip revision."));

  0005b	68 00 00 00 00	 push	 OFFSET ??_C@_1FM@LJHOHGAI@?$AAT?$AAD?$AAA?$AA8?$AA2?$AA7?$AA5?$AA?3?$AA?5?$AAE?$AAr?$AAr?$AAo?$AAr?$AA?5?$AAw?$AAh?$AAi?$AAl?$AAe?$AA?5?$AAd?$AAe?$AAt?$AAe?$AAc?$AAt?$AAi?$AAn?$AAg?$AA?5?$AAc@
  00060	6a 00		 push	 0
  00062	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00067	83 c4 08	 add	 esp, 8

; 250  :     return FALSE;

  0006a	33 c0		 xor	 eax, eax
$LN4@IsTDA8275A:

; 251  : }

  0006c	8b e5		 mov	 esp, ebp
  0006e	5d		 pop	 ebp
  0006f	c3		 ret	 0
?IsTDA8275A@CTDA8275@@AAEHXZ ENDP			; CTDA8275::IsTDA8275A
PUBLIC	__real@410e848000000000
PUBLIC	__$ArrayPad$
;	COMDAT __real@410e848000000000
CONST	SEGMENT
__real@410e848000000000 DQ 0410e848000000000r	; 250000
; Function compile flags: /Odtp
CONST	ENDS
;	COMDAT ?SetFrequency@CTDA8275@@MAEHJW4eTDA8290Standard@@@Z
_TEXT	SEGMENT
tv596 = -140						; size = 4
tv594 = -136						; size = 4
tv591 = -130						; size = 2
tv589 = -128						; size = 4
tv556 = -124						; size = 4
tv554 = -120						; size = 4
tv551 = -114						; size = 2
tv549 = -112						; size = 4
tv522 = -108						; size = 4
tv520 = -104						; size = 4
tv517 = -98						; size = 2
tv515 = -96						; size = 4
_this$ = -92						; size = 4
_n11ton0$140079 = -88					; size = 2
_row$140072 = -84					; size = 4
_channelBytes$140083 = -80				; size = 7
_last$140073 = -72					; size = 4
_n11ton0$140065 = -68					; size = 2
_row$140058 = -64					; size = 4
_channelBytes$140069 = -60				; size = 12
_last$140059 = -48					; size = 4
_n11ton0$140051 = -44					; size = 2
_row$140044 = -40					; size = 4
_channelBytes$140055 = -36				; size = 12
__$ArrayPad$ = -24					; size = 4
_last$140045 = -20					; size = 4
_freqRFIFHz$ = -16					; size = 4
_sgIFLPFilter$ = -9					; size = 1
_success$ = -8						; size = 4
_sgIFHz$ = -4						; size = 4
_frequencyHz$ = 8					; size = 4
_standard$ = 12						; size = 4
?SetFrequency@CTDA8275@@MAEHJW4eTDA8290Standard@@@Z PROC ; CTDA8275::SetFrequency, COMDAT
; _this$ = ecx

; 324  : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	81 ec 8c 00 00
	00		 sub	 esp, 140		; 0000008cH
  00009	a1 00 00 00 00	 mov	 eax, DWORD PTR ___security_cookie
  0000e	33 c5		 xor	 eax, ebp
  00010	89 45 e8	 mov	 DWORD PTR __$ArrayPad$[ebp], eax
  00013	89 4d a4	 mov	 DWORD PTR _this$[ebp], ecx

; 325  :     BYTE sgIFLPFilter = k_standardParamTable[(int)standard].sgIFLPFilter;

  00016	8b 45 0c	 mov	 eax, DWORD PTR _standard$[ebp]
  00019	8a 0c 85 02 00
	00 00		 mov	 cl, BYTE PTR ?k_standardParamTable@CTDA8275@@1QBUtStandardParam@1@B[eax*4+2]
  00020	88 4d f7	 mov	 BYTE PTR _sgIFLPFilter$[ebp], cl

; 326  :     LONG sgIFHz = k_standardParamTable[(int)standard].sgIFkHz * 1000;

  00023	8b 55 0c	 mov	 edx, DWORD PTR _standard$[ebp]
  00026	0f b7 04 95 00
	00 00 00	 movzx	 eax, WORD PTR ?k_standardParamTable@CTDA8275@@1QBUtStandardParam@1@B[edx*4]
  0002e	69 c0 e8 03 00
	00		 imul	 eax, 1000		; 000003e8H
  00034	89 45 fc	 mov	 DWORD PTR _sgIFHz$[ebp], eax

; 327  : 
; 328  :     // sgRFHz + sgIFHz
; 329  :     LONG freqRFIFHz = frequencyHz + sgIFHz;

  00037	8b 4d 08	 mov	 ecx, DWORD PTR _frequencyHz$[ebp]
  0003a	03 4d fc	 add	 ecx, DWORD PTR _sgIFHz$[ebp]
  0003d	89 4d f0	 mov	 DWORD PTR _freqRFIFHz$[ebp], ecx

; 330  : 
; 331  :     // The data-sheet says:
; 332  :     // N11toN0=round((2^spd)*Flo*1000000*(16MHz/(2^6))
; 333  :     //
; 334  :     // Then uses this code to get the n11ton0 value:
; 335  :     // lgN11toN0 = Round((2 ^ prgTab(c, 3)) * (sgRFMHz + sgIFMHz) * 1000000 / (16000000 / 2 ^ 6))
; 336  :     //
; 337  :     // Notice the discrepancy with division of (16MHz/2^6).  'prgTab(c, 3)' is row->spd,
; 338  :     // (sgRFMHz + sgIFMHz) is (freqRFIFHz / 1000000).
; 339  : 
; 340  :     // 0.5 is added for rounding.
; 341  : 
; 342  :     BOOL success = TRUE;

  00040	c7 45 f8 01 00
	00 00		 mov	 DWORD PTR _success$[ebp], 1

; 343  : 
; 344  :     if (IsTDA8275A())

  00047	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  0004a	e8 00 00 00 00	 call	 ?IsTDA8275A@CTDA8275@@AAEHXZ ; CTDA8275::IsTDA8275A
  0004f	85 c0		 test	 eax, eax
  00051	0f 84 7f 03 00
	00		 je	 $LN17@SetFrequen

; 345  :     {
; 346  :         if (IsDvbMode())

  00057	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  0005a	e8 00 00 00 00	 call	 ?IsDvbMode@CTDA8275@@AAEHXZ ; CTDA8275::IsDvbMode
  0005f	85 c0		 test	 eax, eax
  00061	0f 84 95 01 00
	00		 je	 $LN16@SetFrequen

; 347  :         {
; 348  :             // For TDA8275A in DVB Mode
; 349  :             const tProgramingParam3* row = k_programmingTable3;

  00067	c7 45 d8 00 00
	00 00		 mov	 DWORD PTR _row$140044[ebp], OFFSET ?k_programmingTable3@CTDA8275@@1QBUtProgramingParam3@1@B ; CTDA8275::k_programmingTable3

; 350  :             const tProgramingParam3* last = (const tProgramingParam3*)((size_t)row + sizeof(k_programmingTable3)) - 1;

  0006e	8b 55 d8	 mov	 edx, DWORD PTR _row$140044[ebp]
  00071	81 c2 f0 00 00
	00		 add	 edx, 240		; 000000f0H
  00077	89 55 ec	 mov	 DWORD PTR _last$140045[ebp], edx
  0007a	eb 09		 jmp	 SHORT $LN15@SetFrequen
$LN14@SetFrequen:

; 351  :             for ( ; row != last && freqRFIFHz > row->loMax * 1000000; row++) ;

  0007c	8b 45 d8	 mov	 eax, DWORD PTR _row$140044[ebp]
  0007f	83 c0 0a	 add	 eax, 10			; 0000000aH
  00082	89 45 d8	 mov	 DWORD PTR _row$140044[ebp], eax
$LN15@SetFrequen:
  00085	8b 4d d8	 mov	 ecx, DWORD PTR _row$140044[ebp]
  00088	3b 4d ec	 cmp	 ecx, DWORD PTR _last$140045[ebp]
  0008b	74 14		 je	 SHORT $LN13@SetFrequen
  0008d	8b 55 d8	 mov	 edx, DWORD PTR _row$140044[ebp]
  00090	0f b7 42 02	 movzx	 eax, WORD PTR [edx+2]
  00094	69 c0 40 42 0f
	00		 imul	 eax, 1000000		; 000f4240H
  0009a	39 45 f0	 cmp	 DWORD PTR _freqRFIFHz$[ebp], eax
  0009d	7e 02		 jle	 SHORT $LN13@SetFrequen
  0009f	eb db		 jmp	 SHORT $LN14@SetFrequen
$LN13@SetFrequen:

; 352  :             WORD n11ton0 = (WORD)((double)(1 << row->SPD) * ((double)freqRFIFHz / 250000) + 0.5);

  000a1	8b 4d d8	 mov	 ecx, DWORD PTR _row$140044[ebp]
  000a4	0f b6 49 05	 movzx	 ecx, BYTE PTR [ecx+5]
  000a8	ba 01 00 00 00	 mov	 edx, 1
  000ad	d3 e2		 shl	 edx, cl
  000af	89 55 a0	 mov	 DWORD PTR tv515[ebp], edx
  000b2	db 45 a0	 fild	 DWORD PTR tv515[ebp]
  000b5	db 45 f0	 fild	 DWORD PTR _freqRFIFHz$[ebp]
  000b8	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@410e848000000000
  000be	de c9		 fmulp	 ST(1), ST(0)
  000c0	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@3fe0000000000000
  000c6	d9 7d 9e	 fnstcw	 WORD PTR tv517[ebp]
  000c9	0f b7 45 9e	 movzx	 eax, WORD PTR tv517[ebp]
  000cd	0d 00 0c 00 00	 or	 eax, 3072		; 00000c00H
  000d2	89 45 98	 mov	 DWORD PTR tv520[ebp], eax
  000d5	d9 6d 98	 fldcw	 WORD PTR tv520[ebp]
  000d8	db 5d 94	 fistp	 DWORD PTR tv522[ebp]
  000db	d9 6d 9e	 fldcw	 WORD PTR tv517[ebp]
  000de	66 8b 45 94	 mov	 ax, WORD PTR tv522[ebp]
  000e2	66 89 45 d4	 mov	 WORD PTR _n11ton0$140051[ebp], ax

; 353  : 
; 354  :             BYTE channelBytes[12];
; 355  :             channelBytes[0]  = (n11ton0 >> 6) & 0x3F;

  000e6	0f b7 4d d4	 movzx	 ecx, WORD PTR _n11ton0$140051[ebp]
  000ea	c1 f9 06	 sar	 ecx, 6
  000ed	83 e1 3f	 and	 ecx, 63			; 0000003fH
  000f0	88 4d dc	 mov	 BYTE PTR _channelBytes$140055[ebp], cl

; 356  :             channelBytes[1]  = (n11ton0 << 2) & 0xFC;

  000f3	0f b7 55 d4	 movzx	 edx, WORD PTR _n11ton0$140051[ebp]
  000f7	c1 e2 02	 shl	 edx, 2
  000fa	81 e2 fc 00 00
	00		 and	 edx, 252		; 000000fcH
  00100	88 55 dd	 mov	 BYTE PTR _channelBytes$140055[ebp+1], dl

; 357  :             channelBytes[2]  = 0x00;

  00103	c6 45 de 00	 mov	 BYTE PTR _channelBytes$140055[ebp+2], 0

; 358  :             channelBytes[3]  = 0x16;

  00107	c6 45 df 16	 mov	 BYTE PTR _channelBytes$140055[ebp+3], 22 ; 00000016H

; 359  :             channelBytes[4]  = (row->SPD << 5) | (row->SVCO << 3) | (row->SBS);

  0010b	8b 45 d8	 mov	 eax, DWORD PTR _row$140044[ebp]
  0010e	0f b6 48 05	 movzx	 ecx, BYTE PTR [eax+5]
  00112	c1 e1 05	 shl	 ecx, 5
  00115	8b 55 d8	 mov	 edx, DWORD PTR _row$140044[ebp]
  00118	0f b6 42 04	 movzx	 eax, BYTE PTR [edx+4]
  0011c	c1 e0 03	 shl	 eax, 3
  0011f	0b c8		 or	 ecx, eax
  00121	8b 55 d8	 mov	 edx, DWORD PTR _row$140044[ebp]
  00124	0f b6 42 07	 movzx	 eax, BYTE PTR [edx+7]
  00128	0b c8		 or	 ecx, eax
  0012a	88 4d e0	 mov	 BYTE PTR _channelBytes$140055[ebp+4], cl

; 360  :             channelBytes[5]  = 0x01 << 6 | (row->GC3 << 4) | 0x0B;

  0012d	8b 4d d8	 mov	 ecx, DWORD PTR _row$140044[ebp]
  00130	0f b6 51 08	 movzx	 edx, BYTE PTR [ecx+8]
  00134	c1 e2 04	 shl	 edx, 4
  00137	83 ca 40	 or	 edx, 64			; 00000040H
  0013a	83 ca 0b	 or	 edx, 11			; 0000000bH
  0013d	88 55 e1	 mov	 BYTE PTR _channelBytes$140055[ebp+5], dl

; 361  :             channelBytes[6]  = 0x0C;

  00140	c6 45 e2 0c	 mov	 BYTE PTR _channelBytes$140055[ebp+6], 12 ; 0000000cH

; 362  :             channelBytes[7]  = 0x06;

  00144	c6 45 e3 06	 mov	 BYTE PTR _channelBytes$140055[ebp+7], 6

; 363  :             channelBytes[8]  = 0x24;

  00148	c6 45 e4 24	 mov	 BYTE PTR _channelBytes$140055[ebp+8], 36 ; 00000024H

; 364  :             channelBytes[9]  = 0xFF;

  0014c	c6 45 e5 ff	 mov	 BYTE PTR _channelBytes$140055[ebp+9], 255 ; 000000ffH

; 365  :             channelBytes[10] = 0x60;

  00150	c6 45 e6 60	 mov	 BYTE PTR _channelBytes$140055[ebp+10], 96 ; 00000060H

; 366  :             channelBytes[11] = 0x00;

  00154	c6 45 e7 00	 mov	 BYTE PTR _channelBytes$140055[ebp+11], 0

; 367  :             channelBytes[12] = sgIFLPFilter ? 0x3B : 0x39; // 7MHz (US) / 9Mhz (Europe);

  00158	0f b6 45 f7	 movzx	 eax, BYTE PTR _sgIFLPFilter$[ebp]
  0015c	f7 d8		 neg	 eax
  0015e	1b c0		 sbb	 eax, eax
  00160	83 e0 02	 and	 eax, 2
  00163	83 c0 39	 add	 eax, 57			; 00000039H
  00166	88 45 e8	 mov	 BYTE PTR _channelBytes$140055[ebp+12], al

; 368  : 
; 369  :             if (!WriteToSubAddress(TDA8275_DB1, channelBytes, 12))

  00169	6a 0c		 push	 12			; 0000000cH
  0016b	8d 4d dc	 lea	 ecx, DWORD PTR _channelBytes$140055[ebp]
  0016e	51		 push	 ecx
  0016f	6a 00		 push	 0
  00171	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00174	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00177	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEPBEI@Z ; CI2CDevice::WriteToSubAddress
  0017c	85 c0		 test	 eax, eax
  0017e	75 07		 jne	 SHORT $LN12@SetFrequen

; 370  :             {
; 371  :                 return FALSE;

  00180	33 c0		 xor	 eax, eax
  00182	e9 e4 03 00 00	 jmp	 $LN18@SetFrequen
$LN12@SetFrequen:

; 372  :             }
; 373  : 
; 374  :             // 2.2 Re-initialize PLL and gain path
; 375  :             WriteToSubAddress(TDA8275_AB2, 0x3C);

  00187	6a 3c		 push	 60			; 0000003cH
  00189	6a 60		 push	 96			; 00000060H
  0018b	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  0018e	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00191	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 376  :             WriteToSubAddress(TDA8275A_CB2, 0x40);

  00196	6a 40		 push	 64			; 00000040H
  00198	68 a0 00 00 00	 push	 160			; 000000a0H
  0019d	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  001a0	83 c1 0c	 add	 ecx, 12			; 0000000cH
  001a3	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 377  :             Sleep(2);

  001a8	6a 02		 push	 2
  001aa	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4

; 378  :             WriteToSubAddress(TDA8275_CB1, (0x04 << 2) | (row->SCR >> 2));

  001b0	8b 55 d8	 mov	 edx, DWORD PTR _row$140044[ebp]
  001b3	0f b6 42 06	 movzx	 eax, BYTE PTR [edx+6]
  001b7	c1 f8 02	 sar	 eax, 2
  001ba	83 c8 10	 or	 eax, 16			; 00000010H
  001bd	50		 push	 eax
  001be	6a 30		 push	 48			; 00000030H
  001c0	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  001c3	83 c1 0c	 add	 ecx, 12			; 0000000cH
  001c6	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 379  :             Sleep(550); // 550ms delay required.

  001cb	68 26 02 00 00	 push	 550			; 00000226H
  001d0	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4

; 380  :             WriteToSubAddress(TDA8275_AB1, (0x02 << 6) | (row->GC3 << 4) | 0x0F);

  001d6	8b 4d d8	 mov	 ecx, DWORD PTR _row$140044[ebp]
  001d9	0f b6 51 08	 movzx	 edx, BYTE PTR [ecx+8]
  001dd	c1 e2 04	 shl	 edx, 4
  001e0	81 ca 80 00 00
	00		 or	 edx, 128		; 00000080H
  001e6	83 ca 0f	 or	 edx, 15			; 0000000fH
  001e9	52		 push	 edx
  001ea	6a 50		 push	 80			; 00000050H
  001ec	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  001ef	83 c1 0c	 add	 ecx, 12			; 0000000cH
  001f2	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 381  :         }
; 382  :         else

  001f7	e9 d5 01 00 00	 jmp	 $LN11@SetFrequen
$LN16@SetFrequen:

; 383  :         {
; 384  :             // For TDA8275A in analog TV Mode
; 385  :             const tProgramingParam2* row = k_programmingTable2;

  001fc	c7 45 c0 00 00
	00 00		 mov	 DWORD PTR _row$140058[ebp], OFFSET ?k_programmingTable2@CTDA8275@@1QBUtProgramingParam2@1@B ; CTDA8275::k_programmingTable2

; 386  :             const tProgramingParam2* last = (const tProgramingParam2*)((size_t)row + sizeof(k_programmingTable2)) - 1;

  00203	8b 45 c0	 mov	 eax, DWORD PTR _row$140058[ebp]
  00206	05 f0 00 00 00	 add	 eax, 240		; 000000f0H
  0020b	89 45 d0	 mov	 DWORD PTR _last$140059[ebp], eax
  0020e	eb 09		 jmp	 SHORT $LN10@SetFrequen
$LN9@SetFrequen:

; 387  : 
; 388  :             // Find the matching row of the programming table for this frequency.
; 389  :             for ( ; row != last && freqRFIFHz > row->loMax * 1000000; row++) ;

  00210	8b 4d c0	 mov	 ecx, DWORD PTR _row$140058[ebp]
  00213	83 c1 0a	 add	 ecx, 10			; 0000000aH
  00216	89 4d c0	 mov	 DWORD PTR _row$140058[ebp], ecx
$LN10@SetFrequen:
  00219	8b 55 c0	 mov	 edx, DWORD PTR _row$140058[ebp]
  0021c	3b 55 d0	 cmp	 edx, DWORD PTR _last$140059[ebp]
  0021f	74 14		 je	 SHORT $LN8@SetFrequen
  00221	8b 45 c0	 mov	 eax, DWORD PTR _row$140058[ebp]
  00224	0f b7 48 02	 movzx	 ecx, WORD PTR [eax+2]
  00228	69 c9 40 42 0f
	00		 imul	 ecx, 1000000		; 000f4240H
  0022e	39 4d f0	 cmp	 DWORD PTR _freqRFIFHz$[ebp], ecx
  00231	7e 02		 jle	 SHORT $LN8@SetFrequen
  00233	eb db		 jmp	 SHORT $LN9@SetFrequen
$LN8@SetFrequen:

; 390  : 
; 391  :             WORD n11ton0 = (WORD)((double)(1 << row->SPD) * ((double)freqRFIFHz / 250000) + 0.5);

  00235	8b 55 c0	 mov	 edx, DWORD PTR _row$140058[ebp]
  00238	0f b6 4a 05	 movzx	 ecx, BYTE PTR [edx+5]
  0023c	b8 01 00 00 00	 mov	 eax, 1
  00241	d3 e0		 shl	 eax, cl
  00243	89 45 90	 mov	 DWORD PTR tv549[ebp], eax
  00246	db 45 90	 fild	 DWORD PTR tv549[ebp]
  00249	db 45 f0	 fild	 DWORD PTR _freqRFIFHz$[ebp]
  0024c	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@410e848000000000
  00252	de c9		 fmulp	 ST(1), ST(0)
  00254	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@3fe0000000000000
  0025a	d9 7d 8e	 fnstcw	 WORD PTR tv551[ebp]
  0025d	0f b7 45 8e	 movzx	 eax, WORD PTR tv551[ebp]
  00261	0d 00 0c 00 00	 or	 eax, 3072		; 00000c00H
  00266	89 45 88	 mov	 DWORD PTR tv554[ebp], eax
  00269	d9 6d 88	 fldcw	 WORD PTR tv554[ebp]
  0026c	db 5d 84	 fistp	 DWORD PTR tv556[ebp]
  0026f	d9 6d 8e	 fldcw	 WORD PTR tv551[ebp]
  00272	66 8b 4d 84	 mov	 cx, WORD PTR tv556[ebp]
  00276	66 89 4d bc	 mov	 WORD PTR _n11ton0$140065[ebp], cx

; 392  : 
; 393  :             BYTE channelBytes[12];
; 394  :             channelBytes[0]  = (n11ton0 >> 6) & 0x3F;

  0027a	0f b7 55 bc	 movzx	 edx, WORD PTR _n11ton0$140065[ebp]
  0027e	c1 fa 06	 sar	 edx, 6
  00281	83 e2 3f	 and	 edx, 63			; 0000003fH
  00284	88 55 c4	 mov	 BYTE PTR _channelBytes$140069[ebp], dl

; 395  :             channelBytes[1]  = (n11ton0 << 2) & 0xFC;

  00287	0f b7 45 bc	 movzx	 eax, WORD PTR _n11ton0$140065[ebp]
  0028b	c1 e0 02	 shl	 eax, 2
  0028e	25 fc 00 00 00	 and	 eax, 252		; 000000fcH
  00293	88 45 c5	 mov	 BYTE PTR _channelBytes$140069[ebp+1], al

; 396  :             channelBytes[2]  = 0x00;

  00296	c6 45 c6 00	 mov	 BYTE PTR _channelBytes$140069[ebp+2], 0

; 397  :             channelBytes[3]  = 0x16;

  0029a	c6 45 c7 16	 mov	 BYTE PTR _channelBytes$140069[ebp+3], 22 ; 00000016H

; 398  :             channelBytes[4]  = (row->SPD << 5) | (row->SVCO << 3) | (row->SBS);

  0029e	8b 4d c0	 mov	 ecx, DWORD PTR _row$140058[ebp]
  002a1	0f b6 51 05	 movzx	 edx, BYTE PTR [ecx+5]
  002a5	c1 e2 05	 shl	 edx, 5
  002a8	8b 45 c0	 mov	 eax, DWORD PTR _row$140058[ebp]
  002ab	0f b6 48 04	 movzx	 ecx, BYTE PTR [eax+4]
  002af	c1 e1 03	 shl	 ecx, 3
  002b2	0b d1		 or	 edx, ecx
  002b4	8b 45 c0	 mov	 eax, DWORD PTR _row$140058[ebp]
  002b7	0f b6 48 07	 movzx	 ecx, BYTE PTR [eax+7]
  002bb	0b d1		 or	 edx, ecx
  002bd	88 55 c8	 mov	 BYTE PTR _channelBytes$140069[ebp+4], dl

; 399  :             channelBytes[5]  = 0x02 << 6 | (row->GC3 << 4) | 0x0B;

  002c0	8b 55 c0	 mov	 edx, DWORD PTR _row$140058[ebp]
  002c3	0f b6 42 08	 movzx	 eax, BYTE PTR [edx+8]
  002c7	c1 e0 04	 shl	 eax, 4
  002ca	0d 80 00 00 00	 or	 eax, 128		; 00000080H
  002cf	83 c8 0b	 or	 eax, 11			; 0000000bH
  002d2	88 45 c9	 mov	 BYTE PTR _channelBytes$140069[ebp+5], al

; 400  :             channelBytes[6]  = 0x0C;

  002d5	c6 45 ca 0c	 mov	 BYTE PTR _channelBytes$140069[ebp+6], 12 ; 0000000cH

; 401  :             channelBytes[7]  = 0x04;

  002d9	c6 45 cb 04	 mov	 BYTE PTR _channelBytes$140069[ebp+7], 4

; 402  :             channelBytes[8]  = 0x20;

  002dd	c6 45 cc 20	 mov	 BYTE PTR _channelBytes$140069[ebp+8], 32 ; 00000020H

; 403  :             channelBytes[9]  = 0xFF;

  002e1	c6 45 cd ff	 mov	 BYTE PTR _channelBytes$140069[ebp+9], 255 ; 000000ffH

; 404  :             channelBytes[10] = 0xE0;

  002e5	c6 45 ce e0	 mov	 BYTE PTR _channelBytes$140069[ebp+10], 224 ; 000000e0H

; 405  :             channelBytes[11] = 0x00;

  002e9	c6 45 cf 00	 mov	 BYTE PTR _channelBytes$140069[ebp+11], 0

; 406  :             channelBytes[12] = sgIFLPFilter ? 0x3B : 0x39; // 7MHz (US) / 9Mhz (Europe);

  002ed	0f b6 4d f7	 movzx	 ecx, BYTE PTR _sgIFLPFilter$[ebp]
  002f1	f7 d9		 neg	 ecx
  002f3	1b c9		 sbb	 ecx, ecx
  002f5	83 e1 02	 and	 ecx, 2
  002f8	83 c1 39	 add	 ecx, 57			; 00000039H
  002fb	88 4d d0	 mov	 BYTE PTR _channelBytes$140069[ebp+12], cl

; 407  : 
; 408  :             if (!WriteToSubAddress(TDA8275_DB1, channelBytes, 12))

  002fe	6a 0c		 push	 12			; 0000000cH
  00300	8d 55 c4	 lea	 edx, DWORD PTR _channelBytes$140069[ebp]
  00303	52		 push	 edx
  00304	6a 00		 push	 0
  00306	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00309	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0030c	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEPBEI@Z ; CI2CDevice::WriteToSubAddress
  00311	85 c0		 test	 eax, eax
  00313	75 07		 jne	 SHORT $LN7@SetFrequen

; 409  :             {
; 410  :                 return FALSE;

  00315	33 c0		 xor	 eax, eax
  00317	e9 4f 02 00 00	 jmp	 $LN18@SetFrequen
$LN7@SetFrequen:

; 411  :             }
; 412  : 
; 413  :             // 2.2 Re-initialize PLL and gain path
; 414  :             WriteToSubAddress(TDA8275_AB2,  0x3C);

  0031c	6a 3c		 push	 60			; 0000003cH
  0031e	6a 60		 push	 96			; 00000060H
  00320	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00323	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00326	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 415  :             WriteToSubAddress(TDA8275A_CB2, 0xC0);

  0032b	68 c0 00 00 00	 push	 192			; 000000c0H
  00330	68 a0 00 00 00	 push	 160			; 000000a0H
  00335	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00338	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0033b	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 416  :             Sleep(2);

  00340	6a 02		 push	 2
  00342	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4

; 417  :             WriteToSubAddress(TDA8275_CB1, (0x04 << 2) | (row->SCR >> 2));

  00348	8b 45 c0	 mov	 eax, DWORD PTR _row$140058[ebp]
  0034b	0f b6 48 06	 movzx	 ecx, BYTE PTR [eax+6]
  0034f	c1 f9 02	 sar	 ecx, 2
  00352	83 c9 10	 or	 ecx, 16			; 00000010H
  00355	51		 push	 ecx
  00356	6a 30		 push	 48			; 00000030H
  00358	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  0035b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0035e	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 418  :             Sleep(550); // 550ms delay required.

  00363	68 26 02 00 00	 push	 550			; 00000226H
  00368	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__Sleep@4

; 419  :             WriteToSubAddress(TDA8275_AB1, (0x02 << 6) | (row->GC3 << 4) | 0x0F);

  0036e	8b 55 c0	 mov	 edx, DWORD PTR _row$140058[ebp]
  00371	0f b6 42 08	 movzx	 eax, BYTE PTR [edx+8]
  00375	c1 e0 04	 shl	 eax, 4
  00378	0d 80 00 00 00	 or	 eax, 128		; 00000080H
  0037d	83 c8 0f	 or	 eax, 15			; 0000000fH
  00380	50		 push	 eax
  00381	6a 50		 push	 80			; 00000050H
  00383	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00386	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00389	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 420  :             // 3 Enabling VSYNC only for analog TV
; 421  :             WriteToSubAddress(TDA8275A_AB3, 0x28);

  0038e	6a 28		 push	 40			; 00000028H
  00390	68 80 00 00 00	 push	 128			; 00000080H
  00395	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00398	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0039b	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 422  :             WriteToSubAddress(TDA8275A_IB3, 0x01);

  003a0	6a 01		 push	 1
  003a2	68 b0 00 00 00	 push	 176			; 000000b0H
  003a7	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  003aa	83 c1 0c	 add	 ecx, 12			; 0000000cH
  003ad	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 423  :             WriteToSubAddress(TDA8275A_CB3, sgIFLPFilter ? 0x3B : 0x39); // 7MHz (US) / 9Mhz (Europe);

  003b2	0f b6 4d f7	 movzx	 ecx, BYTE PTR _sgIFLPFilter$[ebp]
  003b6	f7 d9		 neg	 ecx
  003b8	1b c9		 sbb	 ecx, ecx
  003ba	83 e1 02	 and	 ecx, 2
  003bd	83 c1 39	 add	 ecx, 57			; 00000039H
  003c0	51		 push	 ecx
  003c1	68 c0 00 00 00	 push	 192			; 000000c0H
  003c6	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  003c9	83 c1 0c	 add	 ecx, 12			; 0000000cH
  003cc	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress
$LN11@SetFrequen:

; 424  :         }
; 425  :     }
; 426  :     else

  003d1	e9 92 01 00 00	 jmp	 $LN6@SetFrequen
$LN17@SetFrequen:

; 427  :     {
; 428  :         // For TDA8275
; 429  :         const tProgramingParam* row = k_programmingTable;

  003d6	c7 45 ac 00 00
	00 00		 mov	 DWORD PTR _row$140072[ebp], OFFSET ?k_programmingTable@CTDA8275@@1QBUtProgramingParam@1@B ; CTDA8275::k_programmingTable

; 430  :         const tProgramingParam* last = (const tProgramingParam*)((size_t)row + sizeof(k_programmingTable)) - 1;

  003dd	8b 55 ac	 mov	 edx, DWORD PTR _row$140072[ebp]
  003e0	81 c2 0e 01 00
	00		 add	 edx, 270		; 0000010eH
  003e6	89 55 b8	 mov	 DWORD PTR _last$140073[ebp], edx
  003e9	eb 09		 jmp	 SHORT $LN5@SetFrequen
$LN4@SetFrequen:

; 431  : 
; 432  :         // Find the matching row of the programming table for this frequency.
; 433  :         for ( ; row != last && freqRFIFHz > row->loMax * 1000000; row++) ;

  003eb	8b 45 ac	 mov	 eax, DWORD PTR _row$140072[ebp]
  003ee	83 c0 0a	 add	 eax, 10			; 0000000aH
  003f1	89 45 ac	 mov	 DWORD PTR _row$140072[ebp], eax
$LN5@SetFrequen:
  003f4	8b 4d ac	 mov	 ecx, DWORD PTR _row$140072[ebp]
  003f7	3b 4d b8	 cmp	 ecx, DWORD PTR _last$140073[ebp]
  003fa	74 14		 je	 SHORT $LN3@SetFrequen
  003fc	8b 55 ac	 mov	 edx, DWORD PTR _row$140072[ebp]
  003ff	0f b7 42 02	 movzx	 eax, WORD PTR [edx+2]
  00403	69 c0 40 42 0f
	00		 imul	 eax, 1000000		; 000f4240H
  00409	39 45 f0	 cmp	 DWORD PTR _freqRFIFHz$[ebp], eax
  0040c	7e 02		 jle	 SHORT $LN3@SetFrequen
  0040e	eb db		 jmp	 SHORT $LN4@SetFrequen
$LN3@SetFrequen:

; 434  : 
; 435  :         WORD n11ton0 = (WORD)((double)(1 << row->spd) * ((double)freqRFIFHz / 250000) + 0.5);

  00410	8b 4d ac	 mov	 ecx, DWORD PTR _row$140072[ebp]
  00413	0f b6 49 04	 movzx	 ecx, BYTE PTR [ecx+4]
  00417	ba 01 00 00 00	 mov	 edx, 1
  0041c	d3 e2		 shl	 edx, cl
  0041e	89 55 80	 mov	 DWORD PTR tv589[ebp], edx
  00421	db 45 80	 fild	 DWORD PTR tv589[ebp]
  00424	db 45 f0	 fild	 DWORD PTR _freqRFIFHz$[ebp]
  00427	dc 35 00 00 00
	00		 fdiv	 QWORD PTR __real@410e848000000000
  0042d	de c9		 fmulp	 ST(1), ST(0)
  0042f	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@3fe0000000000000
  00435	d9 bd 7e ff ff
	ff		 fnstcw	 WORD PTR tv591[ebp]
  0043b	0f b7 85 7e ff
	ff ff		 movzx	 eax, WORD PTR tv591[ebp]
  00442	0d 00 0c 00 00	 or	 eax, 3072		; 00000c00H
  00447	89 85 78 ff ff
	ff		 mov	 DWORD PTR tv594[ebp], eax
  0044d	d9 ad 78 ff ff
	ff		 fldcw	 WORD PTR tv594[ebp]
  00453	db 9d 74 ff ff
	ff		 fistp	 DWORD PTR tv596[ebp]
  00459	d9 ad 7e ff ff
	ff		 fldcw	 WORD PTR tv591[ebp]
  0045f	66 8b 85 74 ff
	ff ff		 mov	 ax, WORD PTR tv596[ebp]
  00466	66 89 45 a8	 mov	 WORD PTR _n11ton0$140079[ebp], ax

; 436  : 
; 437  :         BYTE channelBytes[7];
; 438  :         channelBytes[0] = (n11ton0 >> 6) & 0x3F;

  0046a	0f b7 4d a8	 movzx	 ecx, WORD PTR _n11ton0$140079[ebp]
  0046e	c1 f9 06	 sar	 ecx, 6
  00471	83 e1 3f	 and	 ecx, 63			; 0000003fH
  00474	88 4d b0	 mov	 BYTE PTR _channelBytes$140083[ebp], cl

; 439  :         channelBytes[1] = (n11ton0 << 2) & 0xFC;

  00477	0f b7 55 a8	 movzx	 edx, WORD PTR _n11ton0$140079[ebp]
  0047b	c1 e2 02	 shl	 edx, 2
  0047e	81 e2 fc 00 00
	00		 and	 edx, 252		; 000000fcH
  00484	88 55 b1	 mov	 BYTE PTR _channelBytes$140083[ebp+1], dl

; 440  :         channelBytes[2] = 0x40;

  00487	c6 45 b2 40	 mov	 BYTE PTR _channelBytes$140083[ebp+2], 64 ; 00000040H

; 441  :         channelBytes[3] = sgIFLPFilter ? 0x72 : 0x52; // 7MHz (US) / 9Mhz (Europe)

  0048b	0f b6 45 f7	 movzx	 eax, BYTE PTR _sgIFLPFilter$[ebp]
  0048f	f7 d8		 neg	 eax
  00491	1b c0		 sbb	 eax, eax
  00493	83 e0 20	 and	 eax, 32			; 00000020H
  00496	83 c0 52	 add	 eax, 82			; 00000052H
  00499	88 45 b3	 mov	 BYTE PTR _channelBytes$140083[ebp+3], al

; 442  :         channelBytes[4] = (row->spd << 6)|(row->div1p5 << 5)|(row->BS << 3)|row->BP;

  0049c	8b 4d ac	 mov	 ecx, DWORD PTR _row$140072[ebp]
  0049f	0f b6 51 04	 movzx	 edx, BYTE PTR [ecx+4]
  004a3	c1 e2 06	 shl	 edx, 6
  004a6	8b 45 ac	 mov	 eax, DWORD PTR _row$140072[ebp]
  004a9	0f b6 48 09	 movzx	 ecx, BYTE PTR [eax+9]
  004ad	c1 e1 05	 shl	 ecx, 5
  004b0	0b d1		 or	 edx, ecx
  004b2	8b 45 ac	 mov	 eax, DWORD PTR _row$140072[ebp]
  004b5	0f b6 48 05	 movzx	 ecx, BYTE PTR [eax+5]
  004b9	c1 e1 03	 shl	 ecx, 3
  004bc	0b d1		 or	 edx, ecx
  004be	8b 45 ac	 mov	 eax, DWORD PTR _row$140072[ebp]
  004c1	0f b6 48 06	 movzx	 ecx, BYTE PTR [eax+6]
  004c5	0b d1		 or	 edx, ecx
  004c7	88 55 b4	 mov	 BYTE PTR _channelBytes$140083[ebp+4], dl

; 443  :         channelBytes[5] = 0x8F | (row->GC3 << 4);

  004ca	8b 55 ac	 mov	 edx, DWORD PTR _row$140072[ebp]
  004cd	0f b6 42 08	 movzx	 eax, BYTE PTR [edx+8]
  004d1	c1 e0 04	 shl	 eax, 4
  004d4	0d 8f 00 00 00	 or	 eax, 143		; 0000008fH
  004d9	88 45 b5	 mov	 BYTE PTR _channelBytes$140083[ebp+5], al

; 444  :         channelBytes[6] = 0x8F;

  004dc	c6 45 b6 8f	 mov	 BYTE PTR _channelBytes$140083[ebp+6], 143 ; 0000008fH

; 445  : 
; 446  :         if (!WriteToSubAddress(TDA8275_DB1, channelBytes, 7) ||
; 447  :             !WriteToSubAddress(TDA8275_AB4, 0x00))

  004e0	6a 07		 push	 7
  004e2	8d 4d b0	 lea	 ecx, DWORD PTR _channelBytes$140083[ebp]
  004e5	51		 push	 ecx
  004e6	6a 00		 push	 0
  004e8	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  004eb	83 c1 0c	 add	 ecx, 12			; 0000000cH
  004ee	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEPBEI@Z ; CI2CDevice::WriteToSubAddress
  004f3	85 c0		 test	 eax, eax
  004f5	74 16		 je	 SHORT $LN1@SetFrequen
  004f7	6a 00		 push	 0
  004f9	68 80 00 00 00	 push	 128			; 00000080H
  004fe	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00501	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00504	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress
  00509	85 c0		 test	 eax, eax
  0050b	75 04		 jne	 SHORT $LN2@SetFrequen
$LN1@SetFrequen:

; 448  :         {
; 449  :             return FALSE;

  0050d	33 c0		 xor	 eax, eax
  0050f	eb 5a		 jmp	 SHORT $LN18@SetFrequen
$LN2@SetFrequen:

; 450  :         }
; 451  : 
; 452  : 
; 453  :         // 2.2 Re-initialize PLL and gain path
; 454  :         success &= WriteToSubAddress(TDA8275_AB2, 0xBF);

  00511	68 bf 00 00 00	 push	 191			; 000000bfH
  00516	6a 60		 push	 96			; 00000060H
  00518	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  0051b	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0051e	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress
  00523	23 45 f8	 and	 eax, DWORD PTR _success$[ebp]
  00526	89 45 f8	 mov	 DWORD PTR _success$[ebp], eax

; 455  :         // This puts a delay that may not be necessary.
; 456  :         //    success &= WriteToSubAddress(TDA8275_CB1, 0xD2);
; 457  :         //    Sleep(1);
; 458  :         //    success &= WriteToSubAddress(TDA8275_CB1, 0x56);
; 459  :         //    Sleep(1); // Only 550us required.
; 460  :         //    success &= WriteToSubAddress(TDA8275_CB1, 0x52);
; 461  :         //    Sleep(550); // 550ms delay required.
; 462  :         success &= WriteToSubAddress(TDA8275_CB1, 0x50|row->CP);

  00529	8b 55 ac	 mov	 edx, DWORD PTR _row$140072[ebp]
  0052c	0f b6 42 07	 movzx	 eax, BYTE PTR [edx+7]
  00530	83 c8 50	 or	 eax, 80			; 00000050H
  00533	50		 push	 eax
  00534	6a 30		 push	 48			; 00000030H
  00536	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00539	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0053c	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress
  00541	23 45 f8	 and	 eax, DWORD PTR _success$[ebp]
  00544	89 45 f8	 mov	 DWORD PTR _success$[ebp], eax

; 463  : 
; 464  :         // 3 Enabling VSYNC mode for AGC2
; 465  :         WriteToSubAddress(TDA8275_AB2, 0x7F);

  00547	6a 7f		 push	 127			; 0000007fH
  00549	6a 60		 push	 96			; 00000060H
  0054b	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  0054e	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00551	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 466  :         WriteToSubAddress(TDA8275_AB4, 0x08);

  00556	6a 08		 push	 8
  00558	68 80 00 00 00	 push	 128			; 00000080H
  0055d	8b 4d a4	 mov	 ecx, DWORD PTR _this$[ebp]
  00560	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00563	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress
$LN6@SetFrequen:

; 467  :     }
; 468  : 
; 469  :     return success;

  00568	8b 45 f8	 mov	 eax, DWORD PTR _success$[ebp]
$LN18@SetFrequen:

; 470  : }

  0056b	8b 4d e8	 mov	 ecx, DWORD PTR __$ArrayPad$[ebp]
  0056e	33 cd		 xor	 ecx, ebp
  00570	e8 00 00 00 00	 call	 @__security_check_cookie@4
  00575	8b e5		 mov	 esp, ebp
  00577	5d		 pop	 ebp
  00578	c2 08 00	 ret	 8
?SetFrequency@CTDA8275@@MAEHJW4eTDA8290Standard@@@Z ENDP ; CTDA8275::SetFrequency
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?WriteTDA8275Initialization@CTDA8275@@MAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?WriteTDA8275Initialization@CTDA8275@@MAEXXZ PROC	; CTDA8275::WriteTDA8275Initialization, COMDAT
; _this$ = ecx

; 260  : {

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

; 261  :     // 2 TDA8275A Initialization
; 262  :     if (IsTDA8275A())

  00007	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0000a	e8 00 00 00 00	 call	 ?IsTDA8275A@CTDA8275@@AAEHXZ ; CTDA8275::IsTDA8275A
  0000f	85 c0		 test	 eax, eax
  00011	0f 84 bf 00 00
	00		 je	 $LN2@WriteTDA82

; 263  :     {
; 264  :         WriteToSubAddress(TDA8275_DB1, 0x00);

  00017	6a 00		 push	 0
  00019	6a 00		 push	 0
  0001b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0001e	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00021	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 265  :         WriteToSubAddress(TDA8275_DB2, 0x00);

  00026	6a 00		 push	 0
  00028	6a 10		 push	 16			; 00000010H
  0002a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0002d	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00030	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 266  :         WriteToSubAddress(TDA8275_DB3, 0x00);

  00035	6a 00		 push	 0
  00037	6a 20		 push	 32			; 00000020H
  00039	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0003c	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0003f	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 267  :         WriteToSubAddress(TDA8275_AB1, 0xAB);

  00044	68 ab 00 00 00	 push	 171			; 000000abH
  00049	6a 50		 push	 80			; 00000050H
  0004b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0004e	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00051	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 268  :         WriteToSubAddress(TDA8275_AB2, 0x3C);

  00056	6a 3c		 push	 60			; 0000003cH
  00058	6a 60		 push	 96			; 00000060H
  0005a	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0005d	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00060	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 269  :         WriteToSubAddress(TDA8275A_IB1, 0x04);

  00065	6a 04		 push	 4
  00067	6a 70		 push	 112			; 00000070H
  00069	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0006c	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0006f	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 270  :         WriteToSubAddress(TDA8275A_AB3, 0x24);

  00074	6a 24		 push	 36			; 00000024H
  00076	68 80 00 00 00	 push	 128			; 00000080H
  0007b	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0007e	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00081	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 271  :         WriteToSubAddress(TDA8275A_IB2, 0xFF);

  00086	68 ff 00 00 00	 push	 255			; 000000ffH
  0008b	68 90 00 00 00	 push	 144			; 00000090H
  00090	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00093	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00096	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 272  :         WriteToSubAddress(TDA8275A_CB2, 0x40);

  0009b	6a 40		 push	 64			; 00000040H
  0009d	68 a0 00 00 00	 push	 160			; 000000a0H
  000a2	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000a5	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000a8	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 273  :         WriteToSubAddress(TDA8275A_IB3, 0x00);

  000ad	6a 00		 push	 0
  000af	68 b0 00 00 00	 push	 176			; 000000b0H
  000b4	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000b7	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000ba	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 274  :         WriteToSubAddress(TDA8275A_CB3, 0x3B);

  000bf	6a 3b		 push	 59			; 0000003bH
  000c1	68 c0 00 00 00	 push	 192			; 000000c0H
  000c6	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000c9	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000cc	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 275  : 
; 276  :         /*
; 277  :         // These values come from the _T("2/ TDA8275A Initialization")
; 278  :         // code in the data-sheet.  Those that weren't specified
; 279  :         // there were substituted with default values from the
; 280  :         // default column of the data-sheet.
; 281  : 
; 282  :         BYTE initializationBytes[13] = {
; 283  :             // DB1,  DB2,  DB3,  CB1
; 284  :                0x00, 0x00, 0x00, 0xDC,
; 285  :             // BB,   AB1,  AB2,  IB1
; 286  :                0x05, 0xAB, 0x3C, 0x04,
; 287  :             // AB3,  IB2,  CB2,  IB3,  CB3
; 288  :                0x24, 0xFF, 0x40, 0x00, 0x3B };
; 289  : 
; 290  :         WriteToSubAddress(TDA8275A_DB1, initializationBytes, 13);
; 291  :         */
; 292  :     }
; 293  :     else

  000d1	e9 87 00 00 00	 jmp	 $LN3@WriteTDA82
$LN2@WriteTDA82:

; 294  :     {
; 295  :         WriteToSubAddress(TDA8275_DB1, 0x00);

  000d6	6a 00		 push	 0
  000d8	6a 00		 push	 0
  000da	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000dd	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000e0	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 296  :         WriteToSubAddress(TDA8275_DB2, 0x00);

  000e5	6a 00		 push	 0
  000e7	6a 10		 push	 16			; 00000010H
  000e9	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000ec	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000ef	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 297  :         WriteToSubAddress(TDA8275_DB3, 0x40);

  000f4	6a 40		 push	 64			; 00000040H
  000f6	6a 20		 push	 32			; 00000020H
  000f8	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  000fb	83 c1 0c	 add	 ecx, 12			; 0000000cH
  000fe	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 298  :         WriteToSubAddress(TDA8275_AB3, 0x2A);

  00103	6a 2a		 push	 42			; 0000002aH
  00105	6a 70		 push	 112			; 00000070H
  00107	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0010a	83 c1 0c	 add	 ecx, 12			; 0000000cH
  0010d	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 299  :         WriteToSubAddress(TDA8275_GB, 0xFF);

  00112	68 ff 00 00 00	 push	 255			; 000000ffH
  00117	68 90 00 00 00	 push	 144			; 00000090H
  0011c	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0011f	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00122	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 300  :         WriteToSubAddress(TDA8275_TB, 0x00);

  00127	6a 00		 push	 0
  00129	68 a0 00 00 00	 push	 160			; 000000a0H
  0012e	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00131	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00134	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 301  :         WriteToSubAddress(TDA8275_SDB3, 0x00);

  00139	6a 00		 push	 0
  0013b	68 b0 00 00 00	 push	 176			; 000000b0H
  00140	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00143	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00146	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress

; 302  :         WriteToSubAddress(TDA8275_SDB4, 0x40);

  0014b	6a 40		 push	 64			; 00000040H
  0014d	68 c0 00 00 00	 push	 192			; 000000c0H
  00152	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00155	83 c1 0c	 add	 ecx, 12			; 0000000cH
  00158	e8 00 00 00 00	 call	 ?WriteToSubAddress@CI2CDevice@@QAEHEE@Z ; CI2CDevice::WriteToSubAddress
$LN3@WriteTDA82:

; 303  : 
; 304  :         /*
; 305  :         // These values come from the _T("2/ TDA827x Initialization")
; 306  :         // code in the data-sheet.  Those that weren't specified
; 307  :         // there were substituted with default values from the
; 308  :         // default column of the data-sheet.
; 309  : 
; 310  :         BYTE initializationBytes[13] = {
; 311  :             // DB1,  DB2,  DB3,  CB1
; 312  :                0x00, 0x00, 0x40, 0x70,
; 313  :             // BB,   AB1,  AB2,  AB3
; 314  :                0x00, 0x83, 0x3F, 0x2A,
; 315  :             // AB4,  GB,   TB,   SDB3, SDB4
; 316  :                0x04, 0xFF, 0x00, 0x00, 0x40 };
; 317  : 
; 318  :         WriteToSubAddress(TDA8275_DB1, initializationBytes, 13);
; 319  :         */
; 320  :     }
; 321  : }

  0015d	8b e5		 mov	 esp, ebp
  0015f	5d		 pop	 ebp
  00160	c3		 ret	 0
?WriteTDA8275Initialization@CTDA8275@@MAEXXZ ENDP	; CTDA8275::WriteTDA8275Initialization
END
