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

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

INCLUDELIB OLDNAMES

PUBLIC	?GetDefaultAddress@CTDA9874@@MBEEXZ		; CTDA9874::GetDefaultAddress
PUBLIC	??_R4CTDA9874@@6B@				; CTDA9874::`RTTI Complete Object Locator'
PUBLIC	??_R3CTDA9874@@8				; CTDA9874::`RTTI Class Hierarchy Descriptor'
PUBLIC	??_R2CTDA9874@@8				; CTDA9874::`RTTI Base Class Array'
PUBLIC	??_R1A@?0A@EA@CTDA9874@@8			; CTDA9874::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC	??_R0?AVCTDA9874@@@8				; CTDA9874 `RTTI Type Descriptor'
PUBLIC	??1CTDA9874@@UAE@XZ				; CTDA9874::~CTDA9874
PUBLIC	??_GCTDA9874@@UAEPAXI@Z				; CTDA9874::`scalar deleting destructor'
PUBLIC	??_C@_1DM@BDEDINOO@?$AAC?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?3?$AA?3?$AAG?$AAe?$AAt?$AAD?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AAA?$AAd?$AAd?$AAr?$AAe?$AAs?$AAs?$AA?$CI?$AA?$CJ?$AA?$AA@ ; `string'
PUBLIC	??_C@_13CACJPPAP@?$AAh?$AA?$AA@			; `string'
PUBLIC	??_C@_1GE@LIGMBOBF@?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?$CF?$AAs?$AA?5?$AAa?$AAu?$AAd?$AAi?$AAo?$AA?5?$AAd?$AAe?$AAc?$AAo?$AAd?$AAe?$AAr?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd?$AA?3?$AA?5?$AAd@ ; `string'
PUBLIC	??_7CTDA9874@@6B@				; CTDA9874::`vftable'
EXTRN	??_ECTDA9874@@UAEPAXI@Z:PROC			; CTDA9874::`vector deleting destructor'
;	COMDAT ??_7CTDA9874@@6B@
CONST	SEGMENT
??_7CTDA9874@@6B@ DD FLAT:??_R4CTDA9874@@6B@		; CTDA9874::`vftable'
	DD	FLAT:??_ECTDA9874@@UAEPAXI@Z
	DD	FLAT:?GetDefaultAddress@CTDA9874@@MBEEXZ
CONST	ENDS
;	COMDAT ??_R4CTDA9874@@6B@
rdata$r	SEGMENT
??_R4CTDA9874@@6B@ DD 00H				; CTDA9874::`RTTI Complete Object Locator'
	DD	00H
	DD	00H
	DD	FLAT:??_R0?AVCTDA9874@@@8
	DD	FLAT:??_R3CTDA9874@@8
rdata$r	ENDS
;	COMDAT ??_R3CTDA9874@@8
rdata$r	SEGMENT
??_R3CTDA9874@@8 DD 00H					; CTDA9874::`RTTI Class Hierarchy Descriptor'
	DD	00H
	DD	02H
	DD	FLAT:??_R2CTDA9874@@8
rdata$r	ENDS
;	COMDAT ??_R2CTDA9874@@8
rdata$r	SEGMENT
??_R2CTDA9874@@8 DD FLAT:??_R1A@?0A@EA@CTDA9874@@8	; CTDA9874::`RTTI Base Class Array'
	DD	FLAT:??_R1A@?0A@EA@CI2CDevice@@8
rdata$r	ENDS
;	COMDAT ??_R1A@?0A@EA@CTDA9874@@8
rdata$r	SEGMENT
??_R1A@?0A@EA@CTDA9874@@8 DD FLAT:??_R0?AVCTDA9874@@@8	; CTDA9874::`RTTI Base Class Descriptor at (0,-1,0,64)'
	DD	01H
	DD	00H
	DD	0ffffffffH
	DD	00H
	DD	040H
	DD	FLAT:??_R3CTDA9874@@8
rdata$r	ENDS
;	COMDAT ??_R0?AVCTDA9874@@@8
_DATA	SEGMENT
??_R0?AVCTDA9874@@@8 DD FLAT:??_7type_info@@6B@		; CTDA9874 `RTTI Type Descriptor'
	DD	00H
	DB	'.?AVCTDA9874@@', 00H
_DATA	ENDS
;	COMDAT ??_C@_1GE@LIGMBOBF@?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?$CF?$AAs?$AA?5?$AAa?$AAu?$AAd?$AAi?$AAo?$AA?5?$AAd?$AAe?$AAc?$AAo?$AAd?$AAe?$AAr?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd?$AA?3?$AA?5?$AAd@
CONST	SEGMENT
??_C@_1GE@LIGMBOBF@?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?$CF?$AAs?$AA?5?$AAa?$AAu?$AAd?$AAi?$AAo?$AA?5?$AAd?$AAe?$AAc?$AAo?$AAd?$AAe?$AAr?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd?$AA?3?$AA?5?$AAd@ DB 'T'
	DB	00H, 'D', 00H, 'A', 00H, '9', 00H, '8', 00H, '7', 00H, '4', 00H
	DB	'%', 00H, 's', 00H, ' ', 00H, 'a', 00H, 'u', 00H, 'd', 00H, 'i'
	DB	00H, 'o', 00H, ' ', 00H, 'd', 00H, 'e', 00H, 'c', 00H, 'o', 00H
	DB	'd', 00H, 'e', 00H, 'r', 00H, ' ', 00H, 'f', 00H, 'o', 00H, 'u'
	DB	00H, 'n', 00H, 'd', 00H, ':', 00H, ' ', 00H, 'd', 00H, 'i', 00H
	DB	'c', 00H, '=', 00H, '0', 00H, 'x', 00H, '%', 00H, 'x', 00H, ','
	DB	00H, ' ', 00H, 's', 00H, 'i', 00H, 'c', 00H, '=', 00H, '0', 00H
	DB	'x', 00H, '%', 00H, 'x', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_13CACJPPAP@?$AAh?$AA?$AA@
CONST	SEGMENT
??_C@_13CACJPPAP@?$AAh?$AA?$AA@ DB 'h', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1DM@BDEDINOO@?$AAC?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?3?$AA?3?$AAG?$AAe?$AAt?$AAD?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AAA?$AAd?$AAd?$AAr?$AAe?$AAs?$AAs?$AA?$CI?$AA?$CJ?$AA?$AA@
CONST	SEGMENT
??_C@_1DM@BDEDINOO@?$AAC?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?3?$AA?3?$AAG?$AAe?$AAt?$AAD?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AAA?$AAd?$AAd?$AAr?$AAe?$AAs?$AAs?$AA?$CI?$AA?$CJ?$AA?$AA@ DB 'C'
	DB	00H, 'T', 00H, 'D', 00H, 'A', 00H, '9', 00H, '8', 00H, '7', 00H
	DB	'4', 00H, ':', 00H, ':', 00H, 'G', 00H, 'e', 00H, 't', 00H, 'D'
	DB	00H, 'e', 00H, 'f', 00H, 'a', 00H, 'u', 00H, 'l', 00H, 't', 00H
	DB	'A', 00H, 'd', 00H, 'd', 00H, 'r', 00H, 'e', 00H, 's', 00H, 's'
	DB	00H, '(', 00H, ')', 00H, 00H, 00H		; `string'
PUBLIC	?Reset@CTDA9874@@QAEXXZ				; CTDA9874::Reset
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\tda9874.cpp
;	COMDAT ?Reset@CTDA9874@@QAEXXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?Reset@CTDA9874@@QAEXXZ PROC				; CTDA9874::Reset, COMDAT
; _this$ = ecx

; 44   : {

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

; 45   :     //TODO
; 46   : }

  00007	8b e5		 mov	 esp, ebp
  00009	5d		 pop	 ebp
  0000a	c3		 ret	 0
?Reset@CTDA9874@@QAEXXZ ENDP				; CTDA9874::Reset
PUBLIC	??0CTDA9874@@QAE@XZ				; CTDA9874::CTDA9874
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$??0CTDA9874@@QAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??0CTDA9874@@QAE@XZ$0
__ehfuncinfo$??0CTDA9874@@QAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??0CTDA9874@@QAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??0CTDA9874@@QAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??0CTDA9874@@QAE@XZ PROC				; CTDA9874::CTDA9874, COMDAT
; _this$ = ecx

; 28   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??0CTDA9874@@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	 ??0CI2CDevice@@QAE@XZ	; CI2CDevice::CI2CDevice
  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 ??_7CTDA9874@@6B@

; 29   :     m_iMode        = 1;    /* 0: A2, 1: NICAM */

  0003e	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00041	c7 41 0c 01 00
	00 00		 mov	 DWORD PTR [ecx+12], 1

; 30   :     m_iGCONR    = 0xc0;    /* default config. input pin: SIFSEL=0 */

  00048	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  0004b	c7 42 10 c0 00
	00 00		 mov	 DWORD PTR [edx+16], 192	; 000000c0H

; 31   :     m_iNCONR    = 0x01;    /* default NICAM config.: AMSEL=0,AMUTE=1 */

  00052	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  00055	c7 40 14 01 00
	00 00		 mov	 DWORD PTR [eax+20], 1

; 32   :     m_iESP        = 0x06;    /* default standard: NICAM B/G */

  0005c	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  0005f	c7 41 18 06 00
	00 00		 mov	 DWORD PTR [ecx+24], 6

; 33   :     m_iDic        = 0x11;    /* device id. code */

  00066	8b 55 f0	 mov	 edx, DWORD PTR _this$[ebp]
  00069	c7 42 1c 11 00
	00 00		 mov	 DWORD PTR [edx+28], 17	; 00000011H

; 34   : }

  00070	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  00077	8b 45 f0	 mov	 eax, DWORD PTR _this$[ebp]
  0007a	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  0007d	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  00084	59		 pop	 ecx
  00085	8b e5		 mov	 esp, ebp
  00087	5d		 pop	 ebp
  00088	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??0CTDA9874@@QAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CI2CDevice@@UAE@XZ	; CI2CDevice::~CI2CDevice
__ehhandler$??0CTDA9874@@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$??0CTDA9874@@QAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??0CTDA9874@@QAE@XZ ENDP				; CTDA9874::CTDA9874
;	COMDAT xdata$x
; File c:\develop\dscaler423a\dscaler\tda9874.h
xdata$x	SEGMENT
__unwindtable$??1CTDA9874@@UAE@XZ DD 0ffffffffH
	DD	FLAT:__unwindfunclet$??1CTDA9874@@UAE@XZ$0
__ehfuncinfo$??1CTDA9874@@UAE@XZ DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$??1CTDA9874@@UAE@XZ
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ??1CTDA9874@@UAE@XZ
_TEXT	SEGMENT
_this$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
??1CTDA9874@@UAE@XZ PROC				; CTDA9874::~CTDA9874, COMDAT
; _this$ = ecx

; 82   :     virtual ~CTDA9874() {};

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	6a ff		 push	 -1
  00005	68 00 00 00 00	 push	 __ehhandler$??1CTDA9874@@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 ??_7CTDA9874@@6B@
  0002f	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  00036	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
  0003d	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00040	e8 00 00 00 00	 call	 ??1CI2CDevice@@UAE@XZ	; CI2CDevice::~CI2CDevice
  00045	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  00048	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  0004f	59		 pop	 ecx
  00050	8b e5		 mov	 esp, ebp
  00052	5d		 pop	 ebp
  00053	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$??1CTDA9874@@UAE@XZ$0:
  00000	8b 4d f0	 mov	 ecx, DWORD PTR _this$[ebp]
  00003	e9 00 00 00 00	 jmp	 ??1CI2CDevice@@UAE@XZ	; CI2CDevice::~CI2CDevice
__ehhandler$??1CTDA9874@@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$??1CTDA9874@@UAE@XZ
  0001e	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
??1CTDA9874@@UAE@XZ ENDP				; CTDA9874::~CTDA9874
; Function compile flags: /Odtp
;	COMDAT ??_GCTDA9874@@UAEPAXI@Z
_TEXT	SEGMENT
_this$ = -4						; size = 4
___flags$ = 8						; size = 4
??_GCTDA9874@@UAEPAXI@Z PROC				; CTDA9874::`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	 ??1CTDA9874@@UAE@XZ	; CTDA9874::~CTDA9874
  0000f	8b 45 08	 mov	 eax, DWORD PTR ___flags$[ebp]
  00012	83 e0 01	 and	 eax, 1
  00015	74 0c		 je	 SHORT $LN1@scalar@94
  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@94:
  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
??_GCTDA9874@@UAEPAXI@Z ENDP				; CTDA9874::`scalar deleting destructor'
PUBLIC	?IsDevicePresent@CTDA9874@@QAEHAAH0@Z		; CTDA9874::IsDevicePresent
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\tda9874.cpp
;	COMDAT ?IsDevicePresent@CTDA9874@@QAEHAAH0@Z
_TEXT	SEGMENT
tv95 = -12						; size = 4
_this$ = -8						; size = 4
_result$ = -1						; size = 1
_dic$ = 8						; size = 4
_sic$ = 12						; size = 4
?IsDevicePresent@CTDA9874@@QAEHAAH0@Z PROC		; CTDA9874::IsDevicePresent, COMDAT
; _this$ = ecx

; 49   : {

  00000	55		 push	 ebp
  00001	8b ec		 mov	 ebp, esp
  00003	83 ec 0c	 sub	 esp, 12			; 0000000cH
  00006	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 50   :     // since 0 is a TRUE value make sure we get a change
; 51   :     BYTE result[1] = {3};

  00009	c6 45 ff 03	 mov	 BYTE PTR _result$[ebp], 3

; 52   : 
; 53   :     if(ReadFromSubAddress(TDA9874A_DIC, 0, 0, result, sizeof(result)) == FALSE)

  0000d	6a 01		 push	 1
  0000f	8d 45 ff	 lea	 eax, DWORD PTR _result$[ebp]
  00012	50		 push	 eax
  00013	6a 00		 push	 0
  00015	6a 00		 push	 0
  00017	68 fe 00 00 00	 push	 254			; 000000feH
  0001c	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0001f	e8 00 00 00 00	 call	 ?ReadFromSubAddress@CI2CDevice@@QAEHEPBEIPAEI@Z ; CI2CDevice::ReadFromSubAddress
  00024	85 c0		 test	 eax, eax
  00026	75 07		 jne	 SHORT $LN4@IsDevicePr@2

; 54   :     {
; 55   :         return FALSE;

  00028	33 c0		 xor	 eax, eax
  0002a	e9 8c 00 00 00	 jmp	 $LN5@IsDevicePr@2
$LN4@IsDevicePr@2:

; 56   :     }
; 57   : 
; 58   :     dic = result[0];

  0002f	0f b6 4d ff	 movzx	 ecx, BYTE PTR _result$[ebp]
  00033	8b 55 08	 mov	 edx, DWORD PTR _dic$[ebp]
  00036	89 0a		 mov	 DWORD PTR [edx], ecx

; 59   : 
; 60   :     if(ReadFromSubAddress(TDA9874A_SIC, 0, 0, result, sizeof(result)) == FALSE)

  00038	6a 01		 push	 1
  0003a	8d 45 ff	 lea	 eax, DWORD PTR _result$[ebp]
  0003d	50		 push	 eax
  0003e	6a 00		 push	 0
  00040	6a 00		 push	 0
  00042	68 ff 00 00 00	 push	 255			; 000000ffH
  00047	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0004a	e8 00 00 00 00	 call	 ?ReadFromSubAddress@CI2CDevice@@QAEHEPBEIPAEI@Z ; CI2CDevice::ReadFromSubAddress
  0004f	85 c0		 test	 eax, eax
  00051	75 04		 jne	 SHORT $LN3@IsDevicePr@2

; 61   :     {
; 62   :         return FALSE;

  00053	33 c0		 xor	 eax, eax
  00055	eb 64		 jmp	 SHORT $LN5@IsDevicePr@2
$LN3@IsDevicePr@2:

; 63   :     }
; 64   : 
; 65   :     sic = result[0];

  00057	0f b6 4d ff	 movzx	 ecx, BYTE PTR _result$[ebp]
  0005b	8b 55 0c	 mov	 edx, DWORD PTR _sic$[ebp]
  0005e	89 0a		 mov	 DWORD PTR [edx], ecx

; 66   : 
; 67   :     if (dic == 0x11 || dic == 0x07)

  00060	8b 45 08	 mov	 eax, DWORD PTR _dic$[ebp]
  00063	83 38 11	 cmp	 DWORD PTR [eax], 17	; 00000011H
  00066	74 08		 je	 SHORT $LN1@IsDevicePr@2
  00068	8b 4d 08	 mov	 ecx, DWORD PTR _dic$[ebp]
  0006b	83 39 07	 cmp	 DWORD PTR [ecx], 7
  0006e	75 49		 jne	 SHORT $LN2@IsDevicePr@2
$LN1@IsDevicePr@2:

; 68   :     {
; 69   :         LOG(1, _T("TDA9874%s audio decoder found: dic=0x%x, sic=0x%x"), (dic == 0x11) ? _T("a"):_T("h"), dic, sic);

  00070	8b 55 08	 mov	 edx, DWORD PTR _dic$[ebp]
  00073	83 3a 11	 cmp	 DWORD PTR [edx], 17	; 00000011H
  00076	75 09		 jne	 SHORT $LN7@IsDevicePr@2
  00078	c7 45 f4 00 00
	00 00		 mov	 DWORD PTR tv95[ebp], OFFSET ??_C@_13FNCBLAIF@?$AAa?$AA?$AA@
  0007f	eb 07		 jmp	 SHORT $LN8@IsDevicePr@2
$LN7@IsDevicePr@2:
  00081	c7 45 f4 00 00
	00 00		 mov	 DWORD PTR tv95[ebp], OFFSET ??_C@_13CACJPPAP@?$AAh?$AA?$AA@
$LN8@IsDevicePr@2:
  00088	8b 45 0c	 mov	 eax, DWORD PTR _sic$[ebp]
  0008b	8b 08		 mov	 ecx, DWORD PTR [eax]
  0008d	51		 push	 ecx
  0008e	8b 55 08	 mov	 edx, DWORD PTR _dic$[ebp]
  00091	8b 02		 mov	 eax, DWORD PTR [edx]
  00093	50		 push	 eax
  00094	8b 4d f4	 mov	 ecx, DWORD PTR tv95[ebp]
  00097	51		 push	 ecx
  00098	68 00 00 00 00	 push	 OFFSET ??_C@_1GE@LIGMBOBF@?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?$CF?$AAs?$AA?5?$AAa?$AAu?$AAd?$AAi?$AAo?$AA?5?$AAd?$AAe?$AAc?$AAo?$AAd?$AAe?$AAr?$AA?5?$AAf?$AAo?$AAu?$AAn?$AAd?$AA?3?$AA?5?$AAd@
  0009d	6a 01		 push	 1
  0009f	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  000a4	83 c4 14	 add	 esp, 20			; 00000014H

; 70   :         m_iDic = dic;

  000a7	8b 55 f8	 mov	 edx, DWORD PTR _this$[ebp]
  000aa	8b 45 08	 mov	 eax, DWORD PTR _dic$[ebp]
  000ad	8b 08		 mov	 ecx, DWORD PTR [eax]
  000af	89 4a 1c	 mov	 DWORD PTR [edx+28], ecx

; 71   :         return TRUE;

  000b2	b8 01 00 00 00	 mov	 eax, 1
  000b7	eb 02		 jmp	 SHORT $LN5@IsDevicePr@2
$LN2@IsDevicePr@2:

; 72   :     }
; 73   : 
; 74   :     return FALSE;

  000b9	33 c0		 xor	 eax, eax
$LN5@IsDevicePr@2:

; 75   : }

  000bb	8b e5		 mov	 esp, ebp
  000bd	5d		 pop	 ebp
  000be	c2 08 00	 ret	 8
?IsDevicePresent@CTDA9874@@QAEHAAH0@Z ENDP		; CTDA9874::IsDevicePresent
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?GetDefaultAddress@CTDA9874@@MBEEXZ
_TEXT	SEGMENT
_this$ = -4						; size = 4
?GetDefaultAddress@CTDA9874@@MBEEXZ PROC		; CTDA9874::GetDefaultAddress, COMDAT
; _this$ = ecx

; 37   : {

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

; 38   :     //TODO
; 39   :     LOG(1,_T("CTDA9874::GetDefaultAddress()"));

  00007	68 00 00 00 00	 push	 OFFSET ??_C@_1DM@BDEDINOO@?$AAC?$AAT?$AAD?$AAA?$AA9?$AA8?$AA7?$AA4?$AA?3?$AA?3?$AAG?$AAe?$AAt?$AAD?$AAe?$AAf?$AAa?$AAu?$AAl?$AAt?$AAA?$AAd?$AAd?$AAr?$AAe?$AAs?$AAs?$AA?$CI?$AA?$CJ?$AA?$AA@
  0000c	6a 01		 push	 1
  0000e	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00013	83 c4 08	 add	 esp, 8

; 40   :     return I2C_TDA9874 >> 1;

  00016	b0 58		 mov	 al, 88			; 00000058H

; 41   : }

  00018	8b e5		 mov	 esp, ebp
  0001a	5d		 pop	 ebp
  0001b	c3		 ret	 0
?GetDefaultAddress@CTDA9874@@MBEEXZ ENDP		; CTDA9874::GetDefaultAddress
END
