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

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

INCLUDELIB OLDNAMES

PUBLIC	??_C@_0BC@EJLIDCIG@PALBadCadenceMode?$AA@	; `string'
PUBLIC	??_C@_0BF@FOHFOABO@PAL?5Bad?5Cadence?5Mode?$AA@	; `string'
PUBLIC	??_C@_0BC@KEGINGG@MaxCallsToPALComb?$AA@	; `string'
PUBLIC	??_C@_0BN@FKEEIBIK@Max?5Calls?5to?5PAL?5Comb?5Method?$AA@ ; `string'
PUBLIC	??_C@_0BI@FJDAAIFN@PALPulldownRepeatCount2?$AA@	; `string'
PUBLIC	??_C@_0BO@BDEPNLL@PAL?5Pulldown?5Repeat?5Count?5Out?$AA@ ; `string'
PUBLIC	??_C@_0BH@ELOCBLPM@PALPulldownRepeatCount?$AA@	; `string'
PUBLIC	??_C@_0BN@BFFPLPEM@PAL?5Pulldown?5Repeat?5Count?5In?$AA@ ; `string'
PUBLIC	??_C@_0BE@CGGPOBMO@PALFilmFallbackMode?$AA@	; `string'
PUBLIC	??_C@_0P@IPFIAFCG@PAL?5Video?5Mode?$AA@		; `string'
PUBLIC	??_C@_0BG@FDOJMLOB@PulldownThresholdHigh?$AA@	; `string'
PUBLIC	??_C@_0BI@OJLKOHMO@Pulldown?5Threshold?5High?$AA@ ; `string'
PUBLIC	??_C@_0BF@NIBMMBCM@PulldownThresholdLow?$AA@	; `string'
PUBLIC	??_C@_08BJADNCEH@Pulldown?$AA@			; `string'
PUBLIC	??_C@_0BH@FLAGOLNI@Pulldown?5Threshold?5Low?$AA@ ; `string'
PUBLIC	?FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z	; FilmModePALComb
PUBLIC	?FilmModePALEven@@YAHPAUTDeinterlaceInfo@@@Z	; FilmModePALEven
PUBLIC	?FilmModePALOdd@@YAHPAUTDeinterlaceInfo@@@Z	; FilmModePALOdd
PUBLIC	?PALFilmFallbackIndex@@3JA			; PALFilmFallbackIndex
PUBLIC	?PALBadCadenceIndex@@3JA			; PALBadCadenceIndex
PUBLIC	?PulldownThresholdLow@@3JA			; PulldownThresholdLow
PUBLIC	?PulldownThresholdHigh@@3JA			; PulldownThresholdHigh
PUBLIC	?PALPulldownRepeatCount@@3JA			; PALPulldownRepeatCount
PUBLIC	?PALPulldownRepeatCount2@@3JA			; PALPulldownRepeatCount2
PUBLIC	?MaxCallsToPALComb@@3JA				; MaxCallsToPALComb
PUBLIC	?MovementThreshold@@3JA				; MovementThreshold
PUBLIC	?CombThreshold@@3JA				; CombThreshold
PUBLIC	??_C@_1DI@LJBBFKJF@?$AAU?$AAp?$AAp?$AAe?$AAd?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?$AA@ ; `string'
PUBLIC	??_C@_1EI@CDLPBMOA@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?9?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?5?$AAT?$AAo?$AAo?$AA?5?$AAl@ ; `string'
PUBLIC	??_C@_1BI@MGIHAJEH@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAO?$AAd?$AAd?$AA?$AA@ ; `string'
PUBLIC	??_C@_1BK@PPPNFCOL@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAE?$AAv?$AAe?$AAn?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CK@DFPAGMFC@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CG@IGGLBDCJ@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?$AA@ ; `string'
PUBLIC	??_C@_1GK@IEGFGDLE@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@ ; `string'
PUBLIC	??_C@_1CE@ILLIKMBN@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?$AA@ ; `string'
PUBLIC	??_C@_1CK@NPGCDKLN@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?$AA@ ; `string'
PUBLIC	??_C@_1DI@MNCLNLJM@?$AAD?$AAe?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@ ; `string'
PUBLIC	??_C@_1EI@KOMNENMC@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs@ ; `string'
PUBLIC	??_C@_1JI@KDIHHDKI@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@ ; `string'
PUBLIC	??_C@_1FC@NGBONDFG@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5@ ; `string'
PUBLIC	??_C@_1DI@EFIBKOMF@?$AAI?$AAn?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@ ; `string'
PUBLIC	??_C@_1EE@CGONMJLM@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd@ ; `string'
PUBLIC	?FD50Settings@@3PAUSETTING@@A			; FD50Settings
;	COMDAT ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
_BSS	SEGMENT
?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::LastCombFactor
_BSS	ENDS
;	COMDAT ?LastDiff@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4NA
_BSS	SEGMENT
?LastDiff@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4NA DQ 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::LastDiff
_BSS	ENDS
;	COMDAT ?StartFilmTicks@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4KA
_BSS	SEGMENT
?StartFilmTicks@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4KA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::StartFilmTicks
_BSS	ENDS
;	COMDAT ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
_BSS	SEGMENT
?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::FieldsSinceLastChange
_BSS	ENDS
;	COMDAT ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
_BSS	SEGMENT
?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::NotSureCount
_BSS	ENDS
;	COMDAT ?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA
_BSS	SEGMENT
?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::NeedToCheckComb
_BSS	ENDS
;	COMDAT ?NumCalls@?1??FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z@4JA
_BSS	SEGMENT
?NumCalls@?1??FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z@4JA DD 01H DUP (?) ; `FilmModePALComb'::`2'::NumCalls
;	COMDAT ??_C@_0BC@EJLIDCIG@PALBadCadenceMode?$AA@
CONST	SEGMENT
??_C@_0BC@EJLIDCIG@PALBadCadenceMode?$AA@ DB 'PALBadCadenceMode', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BF@FOHFOABO@PAL?5Bad?5Cadence?5Mode?$AA@
CONST	SEGMENT
??_C@_0BF@FOHFOABO@PAL?5Bad?5Cadence?5Mode?$AA@ DB 'PAL Bad Cadence Mode', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BC@KEGINGG@MaxCallsToPALComb?$AA@
CONST	SEGMENT
??_C@_0BC@KEGINGG@MaxCallsToPALComb?$AA@ DB 'MaxCallsToPALComb', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BN@FKEEIBIK@Max?5Calls?5to?5PAL?5Comb?5Method?$AA@
CONST	SEGMENT
??_C@_0BN@FKEEIBIK@Max?5Calls?5to?5PAL?5Comb?5Method?$AA@ DB 'Max Calls t'
	DB	'o PAL Comb Method', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BI@FJDAAIFN@PALPulldownRepeatCount2?$AA@
CONST	SEGMENT
??_C@_0BI@FJDAAIFN@PALPulldownRepeatCount2?$AA@ DB 'PALPulldownRepeatCoun'
	DB	't2', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0BO@BDEPNLL@PAL?5Pulldown?5Repeat?5Count?5Out?$AA@
CONST	SEGMENT
??_C@_0BO@BDEPNLL@PAL?5Pulldown?5Repeat?5Count?5Out?$AA@ DB 'PAL Pulldown'
	DB	' Repeat Count Out', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BH@ELOCBLPM@PALPulldownRepeatCount?$AA@
CONST	SEGMENT
??_C@_0BH@ELOCBLPM@PALPulldownRepeatCount?$AA@ DB 'PALPulldownRepeatCount'
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_0BN@BFFPLPEM@PAL?5Pulldown?5Repeat?5Count?5In?$AA@
CONST	SEGMENT
??_C@_0BN@BFFPLPEM@PAL?5Pulldown?5Repeat?5Count?5In?$AA@ DB 'PAL Pulldown'
	DB	' Repeat Count In', 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_0BE@CGGPOBMO@PALFilmFallbackMode?$AA@
CONST	SEGMENT
??_C@_0BE@CGGPOBMO@PALFilmFallbackMode?$AA@ DB 'PALFilmFallbackMode', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0P@IPFIAFCG@PAL?5Video?5Mode?$AA@
CONST	SEGMENT
??_C@_0P@IPFIAFCG@PAL?5Video?5Mode?$AA@ DB 'PAL Video Mode', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BG@FDOJMLOB@PulldownThresholdHigh?$AA@
CONST	SEGMENT
??_C@_0BG@FDOJMLOB@PulldownThresholdHigh?$AA@ DB 'PulldownThresholdHigh', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_0BI@OJLKOHMO@Pulldown?5Threshold?5High?$AA@
CONST	SEGMENT
??_C@_0BI@OJLKOHMO@Pulldown?5Threshold?5High?$AA@ DB 'Pulldown Threshold '
	DB	'High', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_0BF@NIBMMBCM@PulldownThresholdLow?$AA@
CONST	SEGMENT
??_C@_0BF@NIBMMBCM@PulldownThresholdLow?$AA@ DB 'PulldownThresholdLow', 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_08BJADNCEH@Pulldown?$AA@
CONST	SEGMENT
??_C@_08BJADNCEH@Pulldown?$AA@ DB 'Pulldown', 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_0BH@FLAGOLNI@Pulldown?5Threshold?5Low?$AA@
CONST	SEGMENT
??_C@_0BH@FLAGOLNI@Pulldown?5Threshold?5Low?$AA@ DB 'Pulldown Threshold L'
	DB	'ow', 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_1EE@CGONMJLM@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd@
CONST	SEGMENT
??_C@_1EE@CGONMJLM@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd@ DB 'G'
	DB	00H, 'o', 00H, 'n', 00H, 'e', 00H, ' ', 00H, 'b', 00H, 'a', 00H
	DB	'c', 00H, 'k', 00H, ' ', 00H, 't', 00H, 'o', 00H, ' ', 00H, 'v'
	DB	00H, 'i', 00H, 'd', 00H, 'e', 00H, 'o', 00H, ' ', 00H, 'f', 00H
	DB	'r', 00H, 'o', 00H, 'm', 00H, ' ', 00H, 'C', 00H, 'o', 00H, 'm'
	DB	00H, 'b', 00H, ' ', 00H, 'M', 00H, 'o', 00H, 'd', 00H, 'e', 00H
	DB	00H, 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_1DI@EFIBKOMF@?$AAI?$AAn?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1DI@EFIBKOMF@?$AAI?$AAn?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@ DB 'I'
	DB	00H, 'n', 00H, 'c', 00H, 'r', 00H, 'e', 00H, 'a', 00H, 's', 00H
	DB	'e', 00H, 'd', 00H, ' ', 00H, 'n', 00H, 'o', 00H, 't', 00H, ' '
	DB	00H, 's', 00H, 'u', 00H, 'r', 00H, 'e', 00H, ' ', 00H, 'C', 00H
	DB	'o', 00H, 'u', 00H, 'n', 00H, 't', 00H, ' ', 00H, '%', 00H, 'd'
	DB	00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1FC@NGBONDFG@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5@
CONST	SEGMENT
??_C@_1FC@NGBONDFG@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5@ DB 'G'
	DB	00H, 'o', 00H, 'n', 00H, 'e', 00H, ' ', 00H, 't', 00H, 'o', 00H
	DB	' ', 00H, 'C', 00H, 'o', 00H, 'm', 00H, 'b', 00H, ' ', 00H, 'M'
	DB	00H, 'o', 00H, 'd', 00H, 'e', 00H, ' ', 00H, 'b', 00H, 'e', 00H
	DB	'c', 00H, 'a', 00H, 'u', 00H, 's', 00H, 'e', 00H, ' ', 00H, 'w'
	DB	00H, 'e', 00H, '''', 00H, 'r', 00H, 'e', 00H, ' ', 00H, 'n', 00H
	DB	'o', 00H, 't', 00H, ' ', 00H, 's', 00H, 'u', 00H, 'r', 00H, 'e'
	DB	00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1JI@KDIHHDKI@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@
CONST	SEGMENT
??_C@_1JI@KDIHHDKI@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@ DB 'C'
	DB	00H, 'h', 00H, 'a', 00H, 'n', 00H, 'g', 00H, 'e', 00H, 's', 00H
	DB	' ', 00H, 't', 00H, 'o', 00H, 'o', 00H, ' ', 00H, 'f', 00H, 'a'
	DB	00H, 's', 00H, 't', 00H, ' ', 00H, 'g', 00H, 'o', 00H, ' ', 00H
	DB	'b', 00H, 'a', 00H, 'c', 00H, 'k', 00H, ' ', 00H, 't', 00H, 'o'
	DB	00H, ' ', 00H, 'v', 00H, 'i', 00H, 'd', 00H, 'e', 00H, 'o', 00H
	DB	' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 'm', 00H, 'a'
	DB	00H, 'k', 00H, 'e', 00H, ' ', 00H, 'i', 00H, 't', 00H, ' ', 00H
	DB	'h', 00H, 'a', 00H, 'r', 00H, 'd', 00H, 'e', 00H, 'r', 00H, ' '
	DB	00H, 'b', 00H, 'e', 00H, 'c', 00H, 'a', 00H, 'u', 00H, 's', 00H
	DB	'e', 00H, ' ', 00H, 'w', 00H, 'e', 00H, '''', 00H, 'r', 00H, 'e'
	DB	00H, ' ', 00H, 'n', 00H, 'o', 00H, 't', 00H, ' ', 00H, 's', 00H
	DB	'u', 00H, 'r', 00H, 'e', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1EI@KOMNENMC@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs@
CONST	SEGMENT
??_C@_1EI@KOMNENMC@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs@ DB 'G'
	DB	00H, 'o', 00H, 'n', 00H, 'e', 00H, ' ', 00H, 'b', 00H, 'a', 00H
	DB	'c', 00H, 'k', 00H, ' ', 00H, 't', 00H, 'o', 00H, ' ', 00H, 'b'
	DB	00H, 'e', 00H, 'c', 00H, 'a', 00H, 'u', 00H, 's', 00H, 'e', 00H
	DB	' ', 00H, 'w', 00H, 'e', 00H, '''', 00H, 'r', 00H, 'e', 00H, ' '
	DB	00H, 'n', 00H, 'o', 00H, 't', 00H, ' ', 00H, 's', 00H, 'u', 00H
	DB	'r', 00H, 'e', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1DI@MNCLNLJM@?$AAD?$AAe?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1DI@MNCLNLJM@?$AAD?$AAe?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@ DB 'D'
	DB	00H, 'e', 00H, 'c', 00H, 'r', 00H, 'e', 00H, 'a', 00H, 's', 00H
	DB	'e', 00H, 'd', 00H, ' ', 00H, 'n', 00H, 'o', 00H, 't', 00H, ' '
	DB	00H, 's', 00H, 'u', 00H, 'r', 00H, 'e', 00H, ' ', 00H, 'C', 00H
	DB	'o', 00H, 'u', 00H, 'n', 00H, 't', 00H, ' ', 00H, '%', 00H, 'd'
	DB	00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ??_C@_1CK@NPGCDKLN@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?$AA@
CONST	SEGMENT
??_C@_1CK@NPGCDKLN@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?$AA@ DB 'R'
	DB	00H, 'e', 00H, 's', 00H, 'e', 00H, 't', 00H, ' ', 00H, 'n', 00H
	DB	'o', 00H, 't', 00H, ' ', 00H, 's', 00H, 'u', 00H, 'r', 00H, 'e'
	DB	00H, ' ', 00H, 'C', 00H, 'o', 00H, 'u', 00H, 'n', 00H, 't', 00H
	DB	00H, 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_1CE@ILLIKMBN@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?$AA@
CONST	SEGMENT
??_C@_1CE@ILLIKMBN@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?$AA@ DB 'G'
	DB	00H, 'o', 00H, 'n', 00H, 'e', 00H, ' ', 00H, 't', 00H, 'o', 00H
	DB	' ', 00H, 'C', 00H, 'o', 00H, 'm', 00H, 'b', 00H, ' ', 00H, 'M'
	DB	00H, 'o', 00H, 'd', 00H, 'e', 00H, 00H, 00H	; `string'
CONST	ENDS
;	COMDAT ??_C@_1GK@IEGFGDLE@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@
CONST	SEGMENT
??_C@_1GK@IEGFGDLE@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@ DB 'C'
	DB	00H, 'h', 00H, 'a', 00H, 'n', 00H, 'g', 00H, 'e', 00H, 's', 00H
	DB	' ', 00H, 't', 00H, 'o', 00H, 'o', 00H, ' ', 00H, 'f', 00H, 'a'
	DB	00H, 's', 00H, 't', 00H, ' ', 00H, 'g', 00H, 'o', 00H, ' ', 00H
	DB	'b', 00H, 'a', 00H, 'c', 00H, 'k', 00H, ' ', 00H, 't', 00H, 'o'
	DB	00H, ' ', 00H, 'v', 00H, 'i', 00H, 'd', 00H, 'e', 00H, 'o', 00H
	DB	' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 'm', 00H, 'a'
	DB	00H, 'k', 00H, 'e', 00H, ' ', 00H, 'i', 00H, 't', 00H, ' ', 00H
	DB	'h', 00H, 'a', 00H, 'r', 00H, 'd', 00H, 'e', 00H, 'r', 00H, 00H
	DB	00H						; `string'
CONST	ENDS
;	COMDAT ??_C@_1CG@IGGLBDCJ@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?$AA@
CONST	SEGMENT
??_C@_1CG@IGGLBDCJ@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?$AA@ DB 'G'
	DB	00H, 'o', 00H, 'n', 00H, 'e', 00H, ' ', 00H, 'b', 00H, 'a', 00H
	DB	'c', 00H, 'k', 00H, ' ', 00H, 't', 00H, 'o', 00H, ' ', 00H, 'v'
	DB	00H, 'i', 00H, 'd', 00H, 'e', 00H, 'o', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1CK@DFPAGMFC@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1CK@DFPAGMFC@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@ DB 'R'
	DB	00H, 'e', 00H, 's', 00H, 'e', 00H, 't', 00H, ' ', 00H, 'R', 00H
	DB	'e', 00H, 'p', 00H, 'e', 00H, 'a', 00H, 't', 00H, 'C', 00H, 'o'
	DB	00H, 'u', 00H, 'n', 00H, 't', 00H, ' ', 00H, '%', 00H, 'd', 00H
	DB	00H, 00H					; `string'
CONST	ENDS
;	COMDAT ??_C@_1BK@PPPNFCOL@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAE?$AAv?$AAe?$AAn?$AA?$AA@
CONST	SEGMENT
??_C@_1BK@PPPNFCOL@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAE?$AAv?$AAe?$AAn?$AA?$AA@ DB 'G'
	DB	00H, 'o', 00H, 'n', 00H, 'e', 00H, ' ', 00H, 't', 00H, 'o', 00H
	DB	' ', 00H, 'E', 00H, 'v', 00H, 'e', 00H, 'n', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1BI@MGIHAJEH@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAO?$AAd?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1BI@MGIHAJEH@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAO?$AAd?$AAd?$AA?$AA@ DB 'G'
	DB	00H, 'o', 00H, 'n', 00H, 'e', 00H, ' ', 00H, 't', 00H, 'o', 00H
	DB	' ', 00H, 'O', 00H, 'd', 00H, 'd', 00H, 00H, 00H ; `string'
CONST	ENDS
;	COMDAT ??_C@_1EI@CDLPBMOA@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?9?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?5?$AAT?$AAo?$AAo?$AA?5?$AAl@
CONST	SEGMENT
??_C@_1EI@CDLPBMOA@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?9?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?5?$AAT?$AAo?$AAo?$AA?5?$AAl@ DB 'R'
	DB	00H, 'e', 00H, 's', 00H, 'e', 00H, 't', 00H, ' ', 00H, 'R', 00H
	DB	'e', 00H, 'p', 00H, 'e', 00H, 'a', 00H, 't', 00H, 'C', 00H, 'o'
	DB	00H, 'u', 00H, 'n', 00H, 't', 00H, ' ', 00H, '-', 00H, ' ', 00H
	DB	'G', 00H, 'a', 00H, 'p', 00H, ' ', 00H, '%', 00H, 'd', 00H, ' '
	DB	00H, 'T', 00H, 'o', 00H, 'o', 00H, ' ', 00H, 'l', 00H, 'o', 00H
	DB	'n', 00H, 'g', 00H, 00H, 00H			; `string'
CONST	ENDS
;	COMDAT ??_C@_1DI@LJBBFKJF@?$AAU?$AAp?$AAp?$AAe?$AAd?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?$AA@
CONST	SEGMENT
??_C@_1DI@LJBBFKJF@?$AAU?$AAp?$AAp?$AAe?$AAd?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?$AA@ DB 'U'
	DB	00H, 'p', 00H, 'p', 00H, 'e', 00H, 'd', 00H, ' ', 00H, 'R', 00H
	DB	'e', 00H, 'p', 00H, 'e', 00H, 'a', 00H, 't', 00H, 'C', 00H, 'o'
	DB	00H, 'u', 00H, 'n', 00H, 't', 00H, ' ', 00H, '%', 00H, 'd', 00H
	DB	' ', 00H, 'G', 00H, 'a', 00H, 'p', 00H, ' ', 00H, '%', 00H, 'd'
	DB	00H, 00H, 00H				; `string'
CONST	ENDS
;	COMDAT ?LastPolarity@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
_DATA	SEGMENT
?LastPolarity@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA DD 0ffffffffH ; `UpdatePALPulldownMode'::`2'::LastPolarity
?PALFilmFallbackIndex@@3JA DD 02H			; PALFilmFallbackIndex
?PALBadCadenceIndex@@3JA DD 011H			; PALBadCadenceIndex
?PulldownThresholdLow@@3JA DD 01eH			; PulldownThresholdLow
?PulldownThresholdHigh@@3JA DD 0aH			; PulldownThresholdHigh
?PALPulldownRepeatCount@@3JA DD 03H			; PALPulldownRepeatCount
?PALPulldownRepeatCount2@@3JA DD 01H			; PALPulldownRepeatCount2
?MaxCallsToPALComb@@3JA DD 014H				; MaxCallsToPALComb
?MovementThreshold@@3JA DD 064H				; MovementThreshold
?CombThreshold@@3JA DD 096H				; CombThreshold
?FD50Settings@@3PAUSETTING@@A DD FLAT:??_C@_0BH@FLAGOLNI@Pulldown?5Threshold?5Low?$AA@ ; FD50Settings
	DD	04H
	DD	00H
	DD	FLAT:?PulldownThresholdLow@@3JA
	DD	028H
	DD	00H
	DD	064H
	DD	02H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_08BJADNCEH@Pulldown?$AA@
	DD	FLAT:??_C@_0BF@NIBMMBCM@PulldownThresholdLow?$AA@
	DD	00H
	DD	FLAT:??_C@_0BI@OJLKOHMO@Pulldown?5Threshold?5High?$AA@
	DD	04H
	DD	00H
	DD	FLAT:?PulldownThresholdHigh@@3JA
	DD	0aH
	DD	00H
	DD	0c8H
	DD	02H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_08BJADNCEH@Pulldown?$AA@
	DD	FLAT:??_C@_0BG@FDOJMLOB@PulldownThresholdHigh?$AA@
	DD	00H
	DD	FLAT:??_C@_0P@IPFIAFCG@PAL?5Video?5Mode?$AA@
	DD	03H
	DD	00H
	DD	FLAT:?PALFilmFallbackIndex@@3JA
	DD	02H
	DD	00H
	DD	063H
	DD	01H
	DD	01H
	DD	FLAT:?DeinterlaceNames@@3PAPBDA
	DD	FLAT:??_C@_08BJADNCEH@Pulldown?$AA@
	DD	FLAT:??_C@_0BE@CGGPOBMO@PALFilmFallbackMode?$AA@
	DD	00H
	DD	FLAT:??_C@_0BN@BFFPLPEM@PAL?5Pulldown?5Repeat?5Count?5In?$AA@
	DD	04H
	DD	00H
	DD	FLAT:?PALPulldownRepeatCount@@3JA
	DD	03H
	DD	01H
	DD	0aH
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_08BJADNCEH@Pulldown?$AA@
	DD	FLAT:??_C@_0BH@ELOCBLPM@PALPulldownRepeatCount?$AA@
	DD	00H
	DD	FLAT:??_C@_0BO@BDEPNLL@PAL?5Pulldown?5Repeat?5Count?5Out?$AA@
	DD	04H
	DD	00H
	DD	FLAT:?PALPulldownRepeatCount2@@3JA
	DD	01H
	DD	01H
	DD	0aH
	DD	01H
	DD	01H
	DD	00H
	DD	FLAT:??_C@_08BJADNCEH@Pulldown?$AA@
	DD	FLAT:??_C@_0BI@FJDAAIFN@PALPulldownRepeatCount2?$AA@
	DD	00H
	DD	FLAT:??_C@_0BN@FKEEIBIK@Max?5Calls?5to?5PAL?5Comb?5Method?$AA@
	DD	04H
	DD	00H
	DD	FLAT:?MaxCallsToPALComb@@3JA
	DD	014H
	DD	00H
	DD	03e8H
	DD	0aH
	DD	01H
	DD	00H
	DD	FLAT:??_C@_08BJADNCEH@Pulldown?$AA@
	DD	FLAT:??_C@_0BC@KEGINGG@MaxCallsToPALComb?$AA@
	DD	00H
	DD	FLAT:??_C@_0BF@FOHFOABO@PAL?5Bad?5Cadence?5Mode?$AA@
	DD	03H
	DD	00H
	DD	FLAT:?PALBadCadenceIndex@@3JA
	DD	011H
	DD	00H
	DD	063H
	DD	01H
	DD	01H
	DD	FLAT:?DeinterlaceNames@@3PAPBDA
	DD	FLAT:??_C@_08BJADNCEH@Pulldown?$AA@
	DD	FLAT:??_C@_0BC@EJLIDCIG@PALBadCadenceMode?$AA@
	DD	00H
PUBLIC	?FD50_GetSetting@@YAPAUSETTING@@W4FD50_SETTING@@@Z ; FD50_GetSetting
; Function compile flags: /Odtp
; File c:\develop\dscaler423a\dscaler\fd_50hz.cpp
;	COMDAT ?FD50_GetSetting@@YAPAUSETTING@@W4FD50_SETTING@@@Z
_TEXT	SEGMENT
_Setting$ = 8						; size = 4
?FD50_GetSetting@@YAPAUSETTING@@W4FD50_SETTING@@@Z PROC	; FD50_GetSetting, COMDAT

; 383  : {

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

; 384  :     if(Setting > -1 && Setting < FD50_SETTING_LASTONE)

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

; 385  :     {
; 386  :         return &(FD50Settings[Setting]);

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

; 387  :     }
; 388  :     else

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

; 389  :     {
; 390  :         return NULL;

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

; 391  :     }
; 392  : }

  00020	5d		 pop	 ebp
  00021	c3		 ret	 0
?FD50_GetSetting@@YAPAUSETTING@@W4FD50_SETTING@@@Z ENDP	; FD50_GetSetting
_TEXT	ENDS
PUBLIC	?FlipPALEven@@YAHHH@Z				; FlipPALEven
; Function compile flags: /Odtp
;	COMDAT ?FlipPALEven@@YAHHH@Z
_TEXT	SEGMENT
_CurrentFrame$ = 8					; size = 4
_bIsOdd$ = 12						; size = 4
?FlipPALEven@@YAHHH@Z PROC				; FlipPALEven, COMDAT

; 289  : {

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

; 290  :     return !bIsOdd;

  00003	33 c0		 xor	 eax, eax
  00005	83 7d 0c 00	 cmp	 DWORD PTR _bIsOdd$[ebp], 0
  00009	0f 94 c0	 sete	 al

; 291  : }

  0000c	5d		 pop	 ebp
  0000d	c3		 ret	 0
?FlipPALEven@@YAHHH@Z ENDP				; FlipPALEven
_TEXT	ENDS
PUBLIC	?FlipPALOdd@@YAHHH@Z				; FlipPALOdd
; Function compile flags: /Odtp
;	COMDAT ?FlipPALOdd@@YAHHH@Z
_TEXT	SEGMENT
_CurrentFrame$ = 8					; size = 4
_bIsOdd$ = 12						; size = 4
?FlipPALOdd@@YAHHH@Z PROC				; FlipPALOdd, COMDAT

; 284  : {

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

; 285  :     return bIsOdd;

  00003	8b 45 0c	 mov	 eax, DWORD PTR _bIsOdd$[ebp]

; 286  : }

  00006	5d		 pop	 ebp
  00007	c3		 ret	 0
?FlipPALOdd@@YAHHH@Z ENDP				; FlipPALOdd
; Function compile flags: /Odtp
;	COMDAT ?FilmModePALEven@@YAHPAUTDeinterlaceInfo@@@Z
_TEXT	SEGMENT
_pInfo$ = 8						; size = 4
?FilmModePALEven@@YAHPAUTDeinterlaceInfo@@@Z PROC	; FilmModePALEven, COMDAT

; 299  : {

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

; 300  :     return SimpleFilmMode(pInfo, FlipPALEven);

  00003	68 00 00 00 00	 push	 OFFSET ?FlipPALEven@@YAHHH@Z ; FlipPALEven
  00008	8b 45 08	 mov	 eax, DWORD PTR _pInfo$[ebp]
  0000b	50		 push	 eax
  0000c	e8 00 00 00 00	 call	 ?SimpleFilmMode@@YAHPAUTDeinterlaceInfo@@P6AHHH@Z@Z ; SimpleFilmMode
  00011	83 c4 08	 add	 esp, 8

; 301  : }

  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
?FilmModePALEven@@YAHPAUTDeinterlaceInfo@@@Z ENDP	; FilmModePALEven
; Function compile flags: /Odtp
_TEXT	ENDS
;	COMDAT ?FilmModePALOdd@@YAHPAUTDeinterlaceInfo@@@Z
_TEXT	SEGMENT
_pInfo$ = 8						; size = 4
?FilmModePALOdd@@YAHPAUTDeinterlaceInfo@@@Z PROC	; FilmModePALOdd, COMDAT

; 294  : {

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

; 295  :     return SimpleFilmMode(pInfo, FlipPALOdd);

  00003	68 00 00 00 00	 push	 OFFSET ?FlipPALOdd@@YAHHH@Z ; FlipPALOdd
  00008	8b 45 08	 mov	 eax, DWORD PTR _pInfo$[ebp]
  0000b	50		 push	 eax
  0000c	e8 00 00 00 00	 call	 ?SimpleFilmMode@@YAHPAUTDeinterlaceInfo@@P6AHHH@Z@Z ; SimpleFilmMode
  00011	83 c4 08	 add	 esp, 8

; 296  : }

  00014	5d		 pop	 ebp
  00015	c3		 ret	 0
?FilmModePALOdd@@YAHPAUTDeinterlaceInfo@@@Z ENDP	; FilmModePALOdd
; Function compile flags: /Odtp
;	COMDAT ?FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z
_TEXT	SEGMENT
_DeintMethod$ = -4					; size = 4
_pInfo$ = 8						; size = 4
?FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z PROC	; FilmModePALComb, COMDAT

; 304  : {

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

; 305  :     static long NumCalls = 0;
; 306  :     DEINTERLACE_METHOD* DeintMethod;
; 307  : 
; 308  :     if(pInfo == NULL)

  00004	83 7d 08 00	 cmp	 DWORD PTR _pInfo$[ebp], 0
  00008	75 0e		 jne	 SHORT $LN4@FilmModePA

; 309  :     {
; 310  :         NumCalls = 0;

  0000a	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?NumCalls@?1??FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z@4JA, 0

; 311  :         return FALSE;

  00014	33 c0		 xor	 eax, eax
  00016	eb 7d		 jmp	 SHORT $LN5@FilmModePA
$LN4@FilmModePA:

; 312  :     }
; 313  : 
; 314  :     ++NumCalls;

  00018	a1 00 00 00 00	 mov	 eax, DWORD PTR ?NumCalls@?1??FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z@4JA
  0001d	83 c0 01	 add	 eax, 1
  00020	a3 00 00 00 00	 mov	 DWORD PTR ?NumCalls@?1??FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z@4JA, eax

; 315  :     if(NumCalls > MaxCallsToPALComb)

  00025	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?NumCalls@?1??FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z@4JA
  0002b	3b 0d 00 00 00
	00		 cmp	 ecx, DWORD PTR ?MaxCallsToPALComb@@3JA ; MaxCallsToPALComb
  00031	7e 1e		 jle	 SHORT $LN3@FilmModePA

; 316  :     {
; 317  :         SetVideoDeinterlaceIndex(PALFilmFallbackIndex);

  00033	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?PALFilmFallbackIndex@@3JA ; PALFilmFallbackIndex
  00039	52		 push	 edx
  0003a	e8 00 00 00 00	 call	 ?SetVideoDeinterlaceIndex@@YAXH@Z ; SetVideoDeinterlaceIndex
  0003f	83 c4 04	 add	 esp, 4

; 318  :         LOG(2, _T("Gone back to video from Comb Mode"));

  00042	68 00 00 00 00	 push	 OFFSET ??_C@_1EE@CGONMJLM@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd@
  00047	6a 02		 push	 2
  00049	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0004e	83 c4 08	 add	 esp, 8
$LN3@FilmModePA:

; 319  :     }
; 320  :     DeintMethod = GetVideoDeintIndex(PALBadCadenceIndex);

  00051	a1 00 00 00 00	 mov	 eax, DWORD PTR ?PALBadCadenceIndex@@3JA ; PALBadCadenceIndex
  00056	50		 push	 eax
  00057	e8 00 00 00 00	 call	 ?GetVideoDeintIndex@@YAPAU_DEINTERLACE_METHOD@@H@Z ; GetVideoDeintIndex
  0005c	83 c4 04	 add	 esp, 4
  0005f	89 45 fc	 mov	 DWORD PTR _DeintMethod$[ebp], eax

; 321  :     if(DeintMethod != NULL && DeintMethod->nMethodIndex == PALBadCadenceIndex)

  00062	83 7d fc 00	 cmp	 DWORD PTR _DeintMethod$[ebp], 0
  00066	74 21		 je	 SHORT $LN2@FilmModePA
  00068	8b 4d fc	 mov	 ecx, DWORD PTR _DeintMethod$[ebp]
  0006b	8b 51 2c	 mov	 edx, DWORD PTR [ecx+44]
  0006e	3b 15 00 00 00
	00		 cmp	 edx, DWORD PTR ?PALBadCadenceIndex@@3JA ; PALBadCadenceIndex
  00074	75 13		 jne	 SHORT $LN2@FilmModePA

; 322  :     {
; 323  :         return DeintMethod->pfnAlgorithm(pInfo);

  00076	8b 45 08	 mov	 eax, DWORD PTR _pInfo$[ebp]
  00079	50		 push	 eax
  0007a	8b 4d fc	 mov	 ecx, DWORD PTR _DeintMethod$[ebp]
  0007d	8b 51 18	 mov	 edx, DWORD PTR [ecx+24]
  00080	ff d2		 call	 edx
  00082	83 c4 04	 add	 esp, 4
  00085	eb 0e		 jmp	 SHORT $LN5@FilmModePA

; 324  :     }
; 325  :     else

  00087	eb 0c		 jmp	 SHORT $LN5@FilmModePA
$LN2@FilmModePA:

; 326  :     {
; 327  :         return Bob(pInfo);

  00089	8b 45 08	 mov	 eax, DWORD PTR _pInfo$[ebp]
  0008c	50		 push	 eax
  0008d	e8 00 00 00 00	 call	 ?Bob@@YAHPAUTDeinterlaceInfo@@@Z ; Bob
  00092	83 c4 04	 add	 esp, 4
$LN5@FilmModePA:

; 328  :     }
; 329  : }

  00095	8b e5		 mov	 esp, ebp
  00097	5d		 pop	 ebp
  00098	c3		 ret	 0
?FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z ENDP	; FilmModePALComb
_TEXT	ENDS
PUBLIC	?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z ; UpdatePALPulldownMode
;	COMDAT ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
_BSS	SEGMENT
?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::RepeatCount
_BSS	ENDS
;	COMDAT ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
_BSS	SEGMENT
?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::PrivateRepeatCount
_BSS	ENDS
;	COMDAT ?$S1@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4IA
_BSS	SEGMENT
?$S1@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4IA DD 01H DUP (?) ; `UpdatePALPulldownMode'::`2'::$S1
_BSS	ENDS
;	COMDAT xdata$x
xdata$x	SEGMENT
__unwindtable$?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z DD 0ffffffffH
	DD	FLAT:__unwindfunclet$?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z$0
__ehfuncinfo$?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z DD 019930522H
	DD	01H
	DD	FLAT:__unwindtable$?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z
	DD	2 DUP(00H)
	DD	2 DUP(00H)
	DD	00H
	DD	00H
; Function compile flags: /Odtp
xdata$x	ENDS
;	COMDAT ?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z
_TEXT	SEGMENT
tv264 = -40						; size = 4
_PercentDecrease$ = -36					; size = 8
_PercentIncrease$ = -28					; size = 8
_IsOdd$ = -16						; size = 4
__$EHRec$ = -12						; size = 12
_pInfo$ = 8						; size = 4
?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z PROC	; UpdatePALPulldownMode, COMDAT

; 54   : {

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

; 55   :     static long LastCombFactor = 0;
; 56   :     static long RepeatCount;
; 57   :     static long LastPolarity = -1;
; 58   :     static double LastDiff = 0;
; 59   :     static DWORD StartFilmTicks = 0;
; 60   :     double PercentDecrease = 0;

  00025	d9 ee		 fldz
  00027	dd 5d dc	 fstp	 QWORD PTR _PercentDecrease$[ebp]

; 61   :     double PercentIncrease = 0;

  0002a	d9 ee		 fldz
  0002c	dd 5d e4	 fstp	 QWORD PTR _PercentIncrease$[ebp]

; 62   :     static long FieldsSinceLastChange = 0;
; 63   :     static long PrivateRepeatCount = PALPulldownRepeatCount;

  0002f	a1 00 00 00 00	 mov	 eax, DWORD PTR ?$S1@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4IA
  00034	83 e0 01	 and	 eax, 1
  00037	75 29		 jne	 SHORT $LN45@UpdatePALP
  00039	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?$S1@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4IA
  0003f	83 c9 01	 or	 ecx, 1
  00042	89 0d 00 00 00
	00		 mov	 DWORD PTR ?$S1@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4IA, ecx
  00048	c7 45 fc 00 00
	00 00		 mov	 DWORD PTR __$EHRec$[ebp+8], 0
  0004f	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?PALPulldownRepeatCount@@3JA ; PALPulldownRepeatCount
  00055	89 15 00 00 00
	00		 mov	 DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, edx
  0005b	c7 45 fc ff ff
	ff ff		 mov	 DWORD PTR __$EHRec$[ebp+8], -1
$LN45@UpdatePALP:

; 64   :     static long NotSureCount = 0;
; 65   :     static BOOL NeedToCheckComb = FALSE;
; 66   : 
; 67   :     // call with pInfo as NULL to reset static variables when we start the thread
; 68   :     // each time
; 69   :     if(pInfo == NULL)

  00062	83 7d 08 00	 cmp	 DWORD PTR _pInfo$[ebp], 0
  00066	75 62		 jne	 SHORT $LN44@UpdatePALP

; 70   :     {
; 71   :         LastCombFactor = 0;

  00068	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 72   :         RepeatCount = 0;

  00072	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 73   :         LastPolarity = -1;

  0007c	c7 05 00 00 00
	00 ff ff ff ff	 mov	 DWORD PTR ?LastPolarity@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, -1

; 74   :         LastDiff = 0;

  00086	d9 ee		 fldz
  00088	dd 1d 00 00 00
	00		 fstp	 QWORD PTR ?LastDiff@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4NA

; 75   :         ResetModeSwitches();

  0008e	e8 00 00 00 00	 call	 ?ResetModeSwitches@@YAXXZ ; ResetModeSwitches

; 76   :         StartFilmTicks = 0;

  00093	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?StartFilmTicks@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4KA, 0

; 77   :         FieldsSinceLastChange = 0;

  0009d	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 78   :         PrivateRepeatCount = PALPulldownRepeatCount;

  000a7	a1 00 00 00 00	 mov	 eax, DWORD PTR ?PALPulldownRepeatCount@@3JA ; PALPulldownRepeatCount
  000ac	a3 00 00 00 00	 mov	 DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, eax

; 79   :         NotSureCount = 0;

  000b1	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 80   :         NeedToCheckComb = FALSE;

  000bb	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA, 0

; 81   :         return;

  000c5	e9 27 05 00 00	 jmp	 $LN46@UpdatePALP
$LN44@UpdatePALP:

; 82   :     }
; 83   : 
; 84   :     if(pInfo->PictureHistory[0] == NULL)

  000ca	8b 4d 08	 mov	 ecx, DWORD PTR _pInfo$[ebp]
  000cd	83 79 04 00	 cmp	 DWORD PTR [ecx+4], 0
  000d1	75 05		 jne	 SHORT $LN43@UpdatePALP

; 85   :     {
; 86   :         return;

  000d3	e9 19 05 00 00	 jmp	 $LN46@UpdatePALP
$LN43@UpdatePALP:

; 87   :     }
; 88   : 
; 89   :     BOOL IsOdd = ((pInfo->PictureHistory[0]->Flags & PICTURE_INTERLACED_ODD) > 0);

  000d8	8b 55 08	 mov	 edx, DWORD PTR _pInfo$[ebp]
  000db	8b 42 04	 mov	 eax, DWORD PTR [edx+4]
  000de	8b 48 04	 mov	 ecx, DWORD PTR [eax+4]
  000e1	83 e1 01	 and	 ecx, 1
  000e4	33 d2		 xor	 edx, edx
  000e6	3b d1		 cmp	 edx, ecx
  000e8	1b c0		 sbb	 eax, eax
  000ea	f7 d8		 neg	 eax
  000ec	89 45 f0	 mov	 DWORD PTR _IsOdd$[ebp], eax

; 90   : 
; 91   :     if(pInfo->CombFactor < 0 || pInfo->FieldDiff < 0)

  000ef	8b 4d 08	 mov	 ecx, DWORD PTR _pInfo$[ebp]
  000f2	83 79 5c 00	 cmp	 DWORD PTR [ecx+92], 0
  000f6	7c 09		 jl	 SHORT $LN41@UpdatePALP
  000f8	8b 55 08	 mov	 edx, DWORD PTR _pInfo$[ebp]
  000fb	83 7a 58 00	 cmp	 DWORD PTR [edx+88], 0
  000ff	7d 05		 jge	 SHORT $LN42@UpdatePALP
$LN41@UpdatePALP:

; 92   :     {
; 93   :         return;

  00101	e9 eb 04 00 00	 jmp	 $LN46@UpdatePALP
$LN42@UpdatePALP:

; 94   :     }
; 95   : 
; 96   :     if(FieldsSinceLastChange < 0x7FFF)

  00106	81 3d 00 00 00
	00 ff 7f 00 00	 cmp	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 32767 ; 00007fffH
  00110	7d 0d		 jge	 SHORT $LN40@UpdatePALP

; 97   :     {
; 98   :         ++FieldsSinceLastChange;

  00112	a1 00 00 00 00	 mov	 eax, DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00117	83 c0 01	 add	 eax, 1
  0011a	a3 00 00 00 00	 mov	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, eax
$LN40@UpdatePALP:

; 99   :     }
; 100  : 
; 101  :     if(NeedToCheckComb == TRUE)

  0011f	83 3d 00 00 00
	00 01		 cmp	 DWORD PTR ?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA, 1
  00126	75 33		 jne	 SHORT $LN36@UpdatePALP

; 102  :     {
; 103  :         if(!IsFilmMode())

  00128	e8 00 00 00 00	 call	 ?IsFilmMode@@YAHXZ	; IsFilmMode
  0012d	85 c0		 test	 eax, eax
  0012f	75 16		 jne	 SHORT $LN38@UpdatePALP

; 104  :         {
; 105  :             RepeatCount = 0;

  00131	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 106  :             NeedToCheckComb = FALSE;

  0013b	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA, 0
  00145	eb 14		 jmp	 SHORT $LN36@UpdatePALP
$LN38@UpdatePALP:

; 107  :         }
; 108  :         else if(GetFilmMode() != FILM_22_PULLDOWN_COMB)

  00147	e8 00 00 00 00	 call	 ?GetFilmMode@@YA?AW4eFilmPulldownMode@@XZ ; GetFilmMode
  0014c	83 f8 08	 cmp	 eax, 8
  0014f	74 0a		 je	 SHORT $LN36@UpdatePALP

; 109  :         {
; 110  :             NeedToCheckComb = FALSE;

  00151	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA, 0
$LN36@UpdatePALP:

; 111  :         }
; 112  :     }
; 113  : 
; 114  :     PercentDecrease = ((double)pInfo->CombFactor * 100.0) / ((double)LastCombFactor + 100.0);

  0015b	8b 4d 08	 mov	 ecx, DWORD PTR _pInfo$[ebp]
  0015e	db 41 5c	 fild	 DWORD PTR [ecx+92]
  00161	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@4059000000000000
  00167	db 05 00 00 00
	00		 fild	 DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  0016d	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@4059000000000000
  00173	de f9		 fdivp	 ST(1), ST(0)
  00175	dd 5d dc	 fstp	 QWORD PTR _PercentDecrease$[ebp]

; 115  :     PercentIncrease = ((double)(pInfo->CombFactor - LastCombFactor) * 100.0) / ((double)LastCombFactor + 100.0);

  00178	8b 55 08	 mov	 edx, DWORD PTR _pInfo$[ebp]
  0017b	8b 42 5c	 mov	 eax, DWORD PTR [edx+92]
  0017e	2b 05 00 00 00
	00		 sub	 eax, DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00184	89 45 d8	 mov	 DWORD PTR tv264[ebp], eax
  00187	db 45 d8	 fild	 DWORD PTR tv264[ebp]
  0018a	dc 0d 00 00 00
	00		 fmul	 QWORD PTR __real@4059000000000000
  00190	db 05 00 00 00
	00		 fild	 DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00196	dc 05 00 00 00
	00		 fadd	 QWORD PTR __real@4059000000000000
  0019c	de f9		 fdivp	 ST(1), ST(0)
  0019e	dd 5d e4	 fstp	 QWORD PTR _PercentIncrease$[ebp]

; 116  : 
; 117  :     if(!IsFilmMode() || GetFilmMode() == FILM_22_PULLDOWN_COMB)

  001a1	e8 00 00 00 00	 call	 ?IsFilmMode@@YAHXZ	; IsFilmMode
  001a6	85 c0		 test	 eax, eax
  001a8	74 0e		 je	 SHORT $LN34@UpdatePALP
  001aa	e8 00 00 00 00	 call	 ?GetFilmMode@@YA?AW4eFilmPulldownMode@@XZ ; GetFilmMode
  001af	83 f8 08	 cmp	 eax, 8
  001b2	0f 85 9b 01 00
	00		 jne	 $LN35@UpdatePALP
$LN34@UpdatePALP:

; 118  :     {
; 119  :         if(PercentDecrease < PulldownThresholdLow &&
; 120  :             LastDiff > PulldownThresholdLow &&
; 121  :             pInfo->FieldDiff > MovementThreshold &&
; 122  :             LastCombFactor > CombThreshold)

  001b8	db 05 00 00 00
	00		 fild	 DWORD PTR ?PulldownThresholdLow@@3JA ; PulldownThresholdLow
  001be	dc 5d dc	 fcomp	 QWORD PTR _PercentDecrease$[ebp]
  001c1	df e0		 fnstsw	 ax
  001c3	f6 c4 41	 test	 ah, 65			; 00000041H
  001c6	0f 85 82 01 00
	00		 jne	 $LN33@UpdatePALP
  001cc	db 05 00 00 00
	00		 fild	 DWORD PTR ?PulldownThresholdLow@@3JA ; PulldownThresholdLow
  001d2	dc 1d 00 00 00
	00		 fcomp	 QWORD PTR ?LastDiff@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4NA
  001d8	df e0		 fnstsw	 ax
  001da	f6 c4 05	 test	 ah, 5
  001dd	0f 8a 6b 01 00
	00		 jp	 $LN33@UpdatePALP
  001e3	8b 4d 08	 mov	 ecx, DWORD PTR _pInfo$[ebp]
  001e6	8b 51 58	 mov	 edx, DWORD PTR [ecx+88]
  001e9	3b 15 00 00 00
	00		 cmp	 edx, DWORD PTR ?MovementThreshold@@3JA ; MovementThreshold
  001ef	0f 8e 59 01 00
	00		 jle	 $LN33@UpdatePALP
  001f5	a1 00 00 00 00	 mov	 eax, DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  001fa	3b 05 00 00 00
	00		 cmp	 eax, DWORD PTR ?CombThreshold@@3JA ; CombThreshold
  00200	0f 8e 48 01 00
	00		 jle	 $LN33@UpdatePALP

; 123  :         {
; 124  :             if(LastPolarity == IsOdd)

  00206	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?LastPolarity@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  0020c	3b 4d f0	 cmp	 ecx, DWORD PTR _IsOdd$[ebp]
  0020f	0f 85 06 01 00
	00		 jne	 $LN32@UpdatePALP

; 125  :             {
; 126  :                 if(RepeatCount < PrivateRepeatCount)

  00215	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  0021b	3b 15 00 00 00
	00		 cmp	 edx, DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00221	0f 8d 81 00 00
	00		 jge	 $LN31@UpdatePALP

; 127  :                 {
; 128  :                     if(RepeatCount == 0)

  00227	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0
  0022e	75 0c		 jne	 SHORT $LN30@UpdatePALP

; 129  :                     {
; 130  :                         RepeatCount = 1;

  00230	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 1

; 131  :                     }
; 132  :                     else

  0023a	eb 6a		 jmp	 SHORT $LN27@UpdatePALP
$LN30@UpdatePALP:

; 133  :                     {
; 134  :                         if((GetTickCount() - StartFilmTicks) < 100)

  0023c	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetTickCount@0
  00242	2b 05 00 00 00
	00		 sub	 eax, DWORD PTR ?StartFilmTicks@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4KA
  00248	83 f8 64	 cmp	 eax, 100		; 00000064H
  0024b	73 33		 jae	 SHORT $LN28@UpdatePALP

; 135  :                         {
; 136  :                             LOG(2, _T("Upped RepeatCount %d Gap %d"), RepeatCount, (GetTickCount() - StartFilmTicks));

  0024d	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetTickCount@0
  00253	2b 05 00 00 00
	00		 sub	 eax, DWORD PTR ?StartFilmTicks@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4KA
  00259	50		 push	 eax
  0025a	a1 00 00 00 00	 mov	 eax, DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  0025f	50		 push	 eax
  00260	68 00 00 00 00	 push	 OFFSET ??_C@_1DI@LJBBFKJF@?$AAU?$AAp?$AAp?$AAe?$AAd?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?$AA@
  00265	6a 02		 push	 2
  00267	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0026c	83 c4 10	 add	 esp, 16			; 00000010H

; 137  :                             RepeatCount++;

  0026f	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00275	83 c1 01	 add	 ecx, 1
  00278	89 0d 00 00 00
	00		 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, ecx

; 138  :                         }
; 139  :                         else

  0027e	eb 26		 jmp	 SHORT $LN27@UpdatePALP
$LN28@UpdatePALP:

; 140  :                         {
; 141  :                             LOG(2, _T("Reset RepeatCount - Gap %d Too long"), (GetTickCount() - StartFilmTicks));

  00280	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetTickCount@0
  00286	2b 05 00 00 00
	00		 sub	 eax, DWORD PTR ?StartFilmTicks@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4KA
  0028c	50		 push	 eax
  0028d	68 00 00 00 00	 push	 OFFSET ??_C@_1EI@CDLPBMOA@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?9?$AA?5?$AAG?$AAa?$AAp?$AA?5?$AA?$CF?$AAd?$AA?5?$AAT?$AAo?$AAo?$AA?5?$AAl@
  00292	6a 02		 push	 2
  00294	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00299	83 c4 0c	 add	 esp, 12			; 0000000cH

; 142  :                             RepeatCount = 1;

  0029c	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 1
$LN27@UpdatePALP:

; 143  :                         }
; 144  :                     }
; 145  :                 }
; 146  :                 else

  002a6	eb 71		 jmp	 SHORT $LN25@UpdatePALP
$LN31@UpdatePALP:

; 147  :                 {
; 148  :                     if(FieldsSinceLastChange > 100 || (GetFilmMode() == FILM_22_PULLDOWN_COMB))

  002a8	83 3d 00 00 00
	00 64		 cmp	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 100 ; 00000064H
  002af	7f 0a		 jg	 SHORT $LN24@UpdatePALP
  002b1	e8 00 00 00 00	 call	 ?GetFilmMode@@YA?AW4eFilmPulldownMode@@XZ ; GetFilmMode
  002b6	83 f8 08	 cmp	 eax, 8
  002b9	75 5e		 jne	 SHORT $LN25@UpdatePALP
$LN24@UpdatePALP:

; 149  :                     {
; 150  :                         if(IsOdd == TRUE)

  002bb	83 7d f0 01	 cmp	 DWORD PTR _IsOdd$[ebp], 1
  002bf	75 19		 jne	 SHORT $LN23@UpdatePALP

; 151  :                         {
; 152  :                             SetFilmDeinterlaceMode(FILM_22_PULLDOWN_ODD);

  002c1	6a 00		 push	 0
  002c3	e8 00 00 00 00	 call	 ?SetFilmDeinterlaceMode@@YAXW4eFilmPulldownMode@@@Z ; SetFilmDeinterlaceMode
  002c8	83 c4 04	 add	 esp, 4

; 153  :                             LOG(2, _T("Gone to Odd"));

  002cb	68 00 00 00 00	 push	 OFFSET ??_C@_1BI@MGIHAJEH@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAO?$AAd?$AAd?$AA?$AA@
  002d0	6a 02		 push	 2
  002d2	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  002d7	83 c4 08	 add	 esp, 8
$LN23@UpdatePALP:

; 154  :                         }
; 155  :                         if(IsOdd == FALSE)

  002da	83 7d f0 00	 cmp	 DWORD PTR _IsOdd$[ebp], 0
  002de	75 19		 jne	 SHORT $LN22@UpdatePALP

; 156  :                         {
; 157  :                             SetFilmDeinterlaceMode(FILM_22_PULLDOWN_EVEN);

  002e0	6a 01		 push	 1
  002e2	e8 00 00 00 00	 call	 ?SetFilmDeinterlaceMode@@YAXW4eFilmPulldownMode@@@Z ; SetFilmDeinterlaceMode
  002e7	83 c4 04	 add	 esp, 4

; 158  :                             LOG(2, _T("Gone to Even"));

  002ea	68 00 00 00 00	 push	 OFFSET ??_C@_1BK@PPPNFCOL@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAE?$AAv?$AAe?$AAn?$AA?$AA@
  002ef	6a 02		 push	 2
  002f1	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  002f6	83 c4 08	 add	 esp, 8
$LN22@UpdatePALP:

; 159  :                         }
; 160  :                         PrivateRepeatCount = PALPulldownRepeatCount;

  002f9	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?PALPulldownRepeatCount@@3JA ; PALPulldownRepeatCount
  002ff	89 15 00 00 00
	00		 mov	 DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, edx

; 161  :                         NotSureCount = 0;

  00305	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 162  :                         FieldsSinceLastChange = 0;

  0030f	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0
$LN25@UpdatePALP:

; 163  :                     }
; 164  :                 }
; 165  :             }
; 166  :             else

  00319	eb 28		 jmp	 SHORT $LN21@UpdatePALP
$LN32@UpdatePALP:

; 167  :             {
; 168  :                 LastPolarity = IsOdd;

  0031b	8b 45 f0	 mov	 eax, DWORD PTR _IsOdd$[ebp]
  0031e	a3 00 00 00 00	 mov	 DWORD PTR ?LastPolarity@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, eax

; 169  :                 RepeatCount = 1;

  00323	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 1

; 170  :                 LOG(2, _T("Reset RepeatCount %d"), RepeatCount);

  0032d	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00333	51		 push	 ecx
  00334	68 00 00 00 00	 push	 OFFSET ??_C@_1CK@DFPAGMFC@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAR?$AAe?$AAp?$AAe?$AAa?$AAt?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@
  00339	6a 02		 push	 2
  0033b	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00340	83 c4 0c	 add	 esp, 12			; 0000000cH
$LN21@UpdatePALP:

; 171  :             }
; 172  :             StartFilmTicks = GetTickCount();

  00343	ff 15 00 00 00
	00		 call	 DWORD PTR __imp__GetTickCount@0
  00349	a3 00 00 00 00	 mov	 DWORD PTR ?StartFilmTicks@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4KA, eax
$LN33@UpdatePALP:

; 173  :         }
; 174  :     }
; 175  :     else

  0034e	e9 89 02 00 00	 jmp	 $LN1@UpdatePALP
$LN35@UpdatePALP:

; 176  :     {
; 177  :         // we are in a real 2:2 film Mode but we need to check that nothing
; 178  :         // bad has happened
; 179  : 
; 180  :         // if we are about to flip
; 181  :         // check that if there is movement that there is not too much combing
; 182  :         // going on
; 183  :         if(pInfo->FieldDiff >= ThresholdPulldownMismatch && // only force video if this field is very different,
; 184  :             LastPolarity == IsOdd &&
; 185  :             pInfo->CombFactor > (LastCombFactor + ThresholdPulldownComb) &&   // and it'd produce artifacts
; 186  :             pInfo->CombFactor > ThresholdPulldownComb)

  00353	8b 55 08	 mov	 edx, DWORD PTR _pInfo$[ebp]
  00356	8b 42 58	 mov	 eax, DWORD PTR [edx+88]
  00359	3b 05 00 00 00
	00		 cmp	 eax, DWORD PTR ?ThresholdPulldownMismatch@@3JA ; ThresholdPulldownMismatch
  0035f	0f 8c f1 00 00
	00		 jl	 $LN15@UpdatePALP
  00365	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?LastPolarity@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  0036b	3b 4d f0	 cmp	 ecx, DWORD PTR _IsOdd$[ebp]
  0036e	0f 85 e2 00 00
	00		 jne	 $LN15@UpdatePALP
  00374	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  0037a	03 15 00 00 00
	00		 add	 edx, DWORD PTR ?ThresholdPulldownComb@@3JA ; ThresholdPulldownComb
  00380	8b 45 08	 mov	 eax, DWORD PTR _pInfo$[ebp]
  00383	39 50 5c	 cmp	 DWORD PTR [eax+92], edx
  00386	0f 8e ca 00 00
	00		 jle	 $LN15@UpdatePALP
  0038c	8b 4d 08	 mov	 ecx, DWORD PTR _pInfo$[ebp]
  0038f	8b 51 5c	 mov	 edx, DWORD PTR [ecx+92]
  00392	3b 15 00 00 00
	00		 cmp	 edx, DWORD PTR ?ThresholdPulldownComb@@3JA ; ThresholdPulldownComb
  00398	0f 8e b8 00 00
	00		 jle	 $LN15@UpdatePALP

; 187  :         {
; 188  :             if(bFallbackToVideo)

  0039e	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?bFallbackToVideo@@3HA, 0 ; bFallbackToVideo
  003a5	74 2c		 je	 SHORT $LN18@UpdatePALP

; 189  :             {
; 190  :                 SetVideoDeinterlaceIndex(PALFilmFallbackIndex);

  003a7	a1 00 00 00 00	 mov	 eax, DWORD PTR ?PALFilmFallbackIndex@@3JA ; PALFilmFallbackIndex
  003ac	50		 push	 eax
  003ad	e8 00 00 00 00	 call	 ?SetVideoDeinterlaceIndex@@YAXH@Z ; SetVideoDeinterlaceIndex
  003b2	83 c4 04	 add	 esp, 4

; 191  :                 LOG(2, _T("Gone back to video"));

  003b5	68 00 00 00 00	 push	 OFFSET ??_C@_1CG@IGGLBDCJ@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe?$AAo?$AA?$AA@
  003ba	6a 02		 push	 2
  003bc	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  003c1	83 c4 08	 add	 esp, 8

; 192  :                 RepeatCount = 0;

  003c4	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 193  :             }
; 194  :             else

  003ce	e9 83 00 00 00	 jmp	 $LN15@UpdatePALP
$LN18@UpdatePALP:

; 195  :             {
; 196  :                 if(FieldsSinceLastChange < 100)

  003d3	83 3d 00 00 00
	00 64		 cmp	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 100 ; 00000064H
  003da	7d 43		 jge	 SHORT $LN16@UpdatePALP

; 197  :                 {
; 198  :                     SetVideoDeinterlaceIndex(PALFilmFallbackIndex);

  003dc	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?PALFilmFallbackIndex@@3JA ; PALFilmFallbackIndex
  003e2	51		 push	 ecx
  003e3	e8 00 00 00 00	 call	 ?SetVideoDeinterlaceIndex@@YAXH@Z ; SetVideoDeinterlaceIndex
  003e8	83 c4 04	 add	 esp, 4

; 199  :                     FieldsSinceLastChange = 0;

  003eb	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 200  :                     PrivateRepeatCount = PALPulldownRepeatCount * 4;

  003f5	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?PALPulldownRepeatCount@@3JA ; PALPulldownRepeatCount
  003fb	c1 e2 02	 shl	 edx, 2
  003fe	89 15 00 00 00
	00		 mov	 DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, edx

; 201  :                     LOG(2, _T("Changes too fast go back to video and make it harder"));

  00404	68 00 00 00 00	 push	 OFFSET ??_C@_1GK@IEGFGDLE@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@
  00409	6a 02		 push	 2
  0040b	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  00410	83 c4 08	 add	 esp, 8

; 202  :                     RepeatCount = 0;

  00413	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 203  :                 }
; 204  :                 else

  0041d	eb 37		 jmp	 SHORT $LN15@UpdatePALP
$LN16@UpdatePALP:

; 205  :                 {
; 206  :                     // Reset the paramters of the Comb method
; 207  :                     FilmModePALComb(NULL);

  0041f	6a 00		 push	 0
  00421	e8 00 00 00 00	 call	 ?FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z ; FilmModePALComb
  00426	83 c4 04	 add	 esp, 4

; 208  :                     SetFilmDeinterlaceMode(FILM_22_PULLDOWN_COMB);

  00429	6a 08		 push	 8
  0042b	e8 00 00 00 00	 call	 ?SetFilmDeinterlaceMode@@YAXW4eFilmPulldownMode@@@Z ; SetFilmDeinterlaceMode
  00430	83 c4 04	 add	 esp, 4

; 209  :                     LOG(2, _T("Gone to Comb Mode"));

  00433	68 00 00 00 00	 push	 OFFSET ??_C@_1CE@ILLIKMBN@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?$AA@
  00438	6a 02		 push	 2
  0043a	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0043f	83 c4 08	 add	 esp, 8

; 210  :                     RepeatCount = PrivateRepeatCount;

  00442	a1 00 00 00 00	 mov	 eax, DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00447	a3 00 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, eax

; 211  :                     NeedToCheckComb = TRUE;

  0044c	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA, 1
$LN15@UpdatePALP:

; 212  :                 }
; 213  :             }
; 214  :         }
; 215  :         if(LastPolarity == IsOdd)

  00456	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?LastPolarity@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  0045c	3b 4d f0	 cmp	 ecx, DWORD PTR _IsOdd$[ebp]
  0045f	0f 85 77 01 00
	00		 jne	 $LN1@UpdatePALP

; 216  :         {
; 217  :             if(pInfo->FieldDiff >= ThresholdPulldownMismatch)

  00465	8b 55 08	 mov	 edx, DWORD PTR _pInfo$[ebp]
  00468	8b 42 58	 mov	 eax, DWORD PTR [edx+88]
  0046b	3b 05 00 00 00
	00		 cmp	 eax, DWORD PTR ?ThresholdPulldownMismatch@@3JA ; ThresholdPulldownMismatch
  00471	0f 8c 65 01 00
	00		 jl	 $LN1@UpdatePALP

; 218  :             {
; 219  :                 if(pInfo->CombFactor < LastCombFactor)

  00477	8b 4d 08	 mov	 ecx, DWORD PTR _pInfo$[ebp]
  0047a	8b 51 5c	 mov	 edx, DWORD PTR [ecx+92]
  0047d	3b 15 00 00 00
	00		 cmp	 edx, DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00483	7d 6a		 jge	 SHORT $LN12@UpdatePALP

; 220  :                 {
; 221  :                     if(pInfo->CombFactor + ThresholdPulldownComb < LastCombFactor)

  00485	8b 45 08	 mov	 eax, DWORD PTR _pInfo$[ebp]
  00488	8b 48 5c	 mov	 ecx, DWORD PTR [eax+92]
  0048b	03 0d 00 00 00
	00		 add	 ecx, DWORD PTR ?ThresholdPulldownComb@@3JA ; ThresholdPulldownComb
  00491	3b 0d 00 00 00
	00		 cmp	 ecx, DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  00497	7d 24		 jge	 SHORT $LN11@UpdatePALP

; 222  :                     {
; 223  :                         if(NotSureCount > 0)

  00499	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0
  004a0	7e 19		 jle	 SHORT $LN10@UpdatePALP

; 224  :                         {
; 225  :                             LOG(2, _T("Reset not sure Count"));

  004a2	68 00 00 00 00	 push	 OFFSET ??_C@_1CK@NPGCDKLN@?$AAR?$AAe?$AAs?$AAe?$AAt?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?$AA@
  004a7	6a 02		 push	 2
  004a9	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  004ae	83 c4 08	 add	 esp, 8

; 226  :                             NotSureCount = 0;

  004b1	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0
$LN10@UpdatePALP:

; 227  :                         }
; 228  :                     }
; 229  :                     else

  004bb	eb 2d		 jmp	 SHORT $LN8@UpdatePALP
$LN11@UpdatePALP:

; 230  :                     {
; 231  :                         if(NotSureCount > 0)

  004bd	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0
  004c4	7e 24		 jle	 SHORT $LN8@UpdatePALP

; 232  :                         {
; 233  :                             --NotSureCount;

  004c6	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  004cc	83 ea 01	 sub	 edx, 1
  004cf	89 15 00 00 00
	00		 mov	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, edx

; 234  :                             LOG(2, _T("Decreased not sure Count %d"), NotSureCount);

  004d5	a1 00 00 00 00	 mov	 eax, DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  004da	50		 push	 eax
  004db	68 00 00 00 00	 push	 OFFSET ??_C@_1DI@MNCLNLJM@?$AAD?$AAe?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@
  004e0	6a 02		 push	 2
  004e2	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  004e7	83 c4 0c	 add	 esp, 12			; 0000000cH
$LN8@UpdatePALP:

; 235  :                         }
; 236  :                     }
; 237  :                 }
; 238  :                 else

  004ea	e9 ed 00 00 00	 jmp	 $LN1@UpdatePALP
$LN12@UpdatePALP:

; 239  :                 {
; 240  :                     ++NotSureCount;

  004ef	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  004f5	83 c1 01	 add	 ecx, 1
  004f8	89 0d 00 00 00
	00		 mov	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, ecx

; 241  :                     if(NotSureCount > 3)

  004fe	83 3d 00 00 00
	00 03		 cmp	 DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 3
  00505	0f 8e bc 00 00
	00		 jle	 $LN6@UpdatePALP

; 242  :                     {
; 243  :                         if(bFallbackToVideo)

  0050b	83 3d 00 00 00
	00 00		 cmp	 DWORD PTR ?bFallbackToVideo@@3HA, 0 ; bFallbackToVideo
  00512	74 2d		 je	 SHORT $LN5@UpdatePALP

; 244  :                         {
; 245  :                             SetVideoDeinterlaceIndex(PALFilmFallbackIndex);

  00514	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?PALFilmFallbackIndex@@3JA ; PALFilmFallbackIndex
  0051a	52		 push	 edx
  0051b	e8 00 00 00 00	 call	 ?SetVideoDeinterlaceIndex@@YAXH@Z ; SetVideoDeinterlaceIndex
  00520	83 c4 04	 add	 esp, 4

; 246  :                             LOG(2, _T("Gone back to because we're not sure"));

  00523	68 00 00 00 00	 push	 OFFSET ??_C@_1EI@KOMNENMC@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs@
  00528	6a 02		 push	 2
  0052a	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0052f	83 c4 08	 add	 esp, 8

; 247  :                             RepeatCount = 0;

  00532	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 248  :                         }
; 249  :                         else

  0053c	e9 84 00 00 00	 jmp	 $LN2@UpdatePALP
$LN5@UpdatePALP:

; 250  :                         {
; 251  :                             if(FieldsSinceLastChange < 100)

  00541	83 3d 00 00 00
	00 64		 cmp	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 100 ; 00000064H
  00548	7d 42		 jge	 SHORT $LN3@UpdatePALP

; 252  :                             {
; 253  :                                 SetVideoDeinterlaceIndex(PALFilmFallbackIndex);

  0054a	a1 00 00 00 00	 mov	 eax, DWORD PTR ?PALFilmFallbackIndex@@3JA ; PALFilmFallbackIndex
  0054f	50		 push	 eax
  00550	e8 00 00 00 00	 call	 ?SetVideoDeinterlaceIndex@@YAXH@Z ; SetVideoDeinterlaceIndex
  00555	83 c4 04	 add	 esp, 4

; 254  :                                 FieldsSinceLastChange = 0;

  00558	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?FieldsSinceLastChange@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 255  :                                 PrivateRepeatCount = PALPulldownRepeatCount * 4;

  00562	8b 0d 00 00 00
	00		 mov	 ecx, DWORD PTR ?PALPulldownRepeatCount@@3JA ; PALPulldownRepeatCount
  00568	c1 e1 02	 shl	 ecx, 2
  0056b	89 0d 00 00 00
	00		 mov	 DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, ecx

; 256  :                                 LOG(2, _T("Changes too fast go back to video and make it harder because we're not sure"));

  00571	68 00 00 00 00	 push	 OFFSET ??_C@_1JI@KDIHHDKI@?$AAC?$AAh?$AAa?$AAn?$AAg?$AAe?$AAs?$AA?5?$AAt?$AAo?$AAo?$AA?5?$AAf?$AAa?$AAs?$AAt?$AA?5?$AAg?$AAo?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAt?$AAo?$AA?5?$AAv?$AAi?$AAd?$AAe@
  00576	6a 02		 push	 2
  00578	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  0057d	83 c4 08	 add	 esp, 8

; 257  :                                 RepeatCount = 0;

  00580	c7 05 00 00 00
	00 00 00 00 00	 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, 0

; 258  :                             }
; 259  :                             else

  0058a	eb 39		 jmp	 SHORT $LN2@UpdatePALP
$LN3@UpdatePALP:

; 260  :                             {
; 261  :                                 // Reset the paramters of the Comb method
; 262  :                                 FilmModePALComb(NULL);

  0058c	6a 00		 push	 0
  0058e	e8 00 00 00 00	 call	 ?FilmModePALComb@@YAHPAUTDeinterlaceInfo@@@Z ; FilmModePALComb
  00593	83 c4 04	 add	 esp, 4

; 263  :                                 SetFilmDeinterlaceMode(FILM_22_PULLDOWN_COMB);

  00596	6a 08		 push	 8
  00598	e8 00 00 00 00	 call	 ?SetFilmDeinterlaceMode@@YAXW4eFilmPulldownMode@@@Z ; SetFilmDeinterlaceMode
  0059d	83 c4 04	 add	 esp, 4

; 264  :                                 LOG(2, _T("Gone to Comb Mode because we're not sure"));

  005a0	68 00 00 00 00	 push	 OFFSET ??_C@_1FC@NGBONDFG@?$AAG?$AAo?$AAn?$AAe?$AA?5?$AAt?$AAo?$AA?5?$AAC?$AAo?$AAm?$AAb?$AA?5?$AAM?$AAo?$AAd?$AAe?$AA?5?$AAb?$AAe?$AAc?$AAa?$AAu?$AAs?$AAe?$AA?5?$AAw?$AAe?$AA?8?$AAr?$AAe?$AA?5@
  005a5	6a 02		 push	 2
  005a7	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  005ac	83 c4 08	 add	 esp, 8

; 265  :                                 RepeatCount = PrivateRepeatCount;

  005af	8b 15 00 00 00
	00		 mov	 edx, DWORD PTR ?PrivateRepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  005b5	89 15 00 00 00
	00		 mov	 DWORD PTR ?RepeatCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, edx

; 266  :                                 NeedToCheckComb = TRUE;

  005bb	c7 05 00 00 00
	00 01 00 00 00	 mov	 DWORD PTR ?NeedToCheckComb@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4HA, 1
$LN2@UpdatePALP:

; 267  :                             }
; 268  :                         }
; 269  :                     }
; 270  :                     else

  005c5	eb 15		 jmp	 SHORT $LN1@UpdatePALP
$LN6@UpdatePALP:

; 271  :                     {
; 272  :                         LOG(2, _T("Increased not sure Count %d"), NotSureCount);

  005c7	a1 00 00 00 00	 mov	 eax, DWORD PTR ?NotSureCount@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA
  005cc	50		 push	 eax
  005cd	68 00 00 00 00	 push	 OFFSET ??_C@_1DI@EFIBKOMF@?$AAI?$AAn?$AAc?$AAr?$AAe?$AAa?$AAs?$AAe?$AAd?$AA?5?$AAn?$AAo?$AAt?$AA?5?$AAs?$AAu?$AAr?$AAe?$AA?5?$AAC?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CF?$AAd?$AA?$AA@
  005d2	6a 02		 push	 2
  005d4	e8 00 00 00 00	 call	 ?LOG@@YAXHPB_WZZ	; LOG
  005d9	83 c4 0c	 add	 esp, 12			; 0000000cH
$LN1@UpdatePALP:

; 273  :                     }
; 274  :                 }
; 275  :             }
; 276  :         }
; 277  :     }
; 278  : 
; 279  :     LastDiff = PercentDecrease;

  005dc	dd 45 dc	 fld	 QWORD PTR _PercentDecrease$[ebp]
  005df	dd 1d 00 00 00
	00		 fstp	 QWORD PTR ?LastDiff@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4NA

; 280  :     LastCombFactor = pInfo->CombFactor;

  005e5	8b 4d 08	 mov	 ecx, DWORD PTR _pInfo$[ebp]
  005e8	8b 51 5c	 mov	 edx, DWORD PTR [ecx+92]
  005eb	89 15 00 00 00
	00		 mov	 DWORD PTR ?LastCombFactor@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4JA, edx
$LN46@UpdatePALP:

; 281  : }

  005f1	8b 4d f4	 mov	 ecx, DWORD PTR __$EHRec$[ebp]
  005f4	64 89 0d 00 00
	00 00		 mov	 DWORD PTR fs:0, ecx
  005fb	59		 pop	 ecx
  005fc	8b e5		 mov	 esp, ebp
  005fe	5d		 pop	 ebp
  005ff	c3		 ret	 0
_TEXT	ENDS
;	COMDAT text$x
text$x	SEGMENT
__unwindfunclet$?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z$0:
  00000	a1 00 00 00 00	 mov	 eax, DWORD PTR ?$S1@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4IA
  00005	83 e0 fe	 and	 eax, -2			; fffffffeH
  00008	a3 00 00 00 00	 mov	 DWORD PTR ?$S1@?1??UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z@4IA, eax
  0000d	c3		 ret	 0
__ehhandler$?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z:
  0000e	8b 54 24 08	 mov	 edx, DWORD PTR [esp+8]
  00012	8d 42 0c	 lea	 eax, DWORD PTR [edx+12]
  00015	8b 4a e0	 mov	 ecx, DWORD PTR [edx-32]
  00018	33 c8		 xor	 ecx, eax
  0001a	e8 00 00 00 00	 call	 @__security_check_cookie@4
  0001f	b8 00 00 00 00	 mov	 eax, OFFSET __ehfuncinfo$?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z
  00024	e9 00 00 00 00	 jmp	 ___CxxFrameHandler3
text$x	ENDS
?UpdatePALPulldownMode@@YAXPAUTDeinterlaceInfo@@@Z ENDP	; UpdatePALPulldownMode
END
